jer*_*ere 6 sql t-sql sql-server sql-server-2012
我有一个包含这样记录的表格:
id timestamp dose drug_id
1 2012-10-04 09:10:54 05 2
1 2012-10-04 09:12:34 15 2
1 2012-10-04 09:15:12 20 2
1 2012-10-04 09:35:32 25 2
1 2012-10-04 09:37:34 25 2
1 2012-10-04 09:39:24 25 2
1 2012-10-04 09:42:16 35 2
1 2012-10-04 09:43:07 35 2
Run Code Online (Sandbox Code Playgroud)
我想要做的是选择给定药物的最后5个使用剂量值,因此在这种情况下,查询应返回35,25,20,15,05.
我知道我可以使用TOP和ORDER BY来获取最新的5个条目,但在这种情况下它将返回重复项(35,35,25,25,25).
我应该用什么来获得我想要的输出?
Hot*_*ips 12
我无法访问我的服务器来测试它,但不应该
SELECT TOP 5 dose
FROM table_id
GROUP BY dose
ORDER BY max(time) desc;
Run Code Online (Sandbox Code Playgroud)
工作?
编辑:在测试了http://sqlfiddle.com/#!6/610c4/2,请注意,我没有用过timestamp只是time.适当修复.
| 归档时间: |
|
| 查看次数: |
6833 次 |
| 最近记录: |