在其他字段值相同的条件下,如何从多条数据中取出时间最近的一个 你的情况可以直接MAX GROUP BYSELECT 用户,设备,MAX( 时间)FROM TBGROUP BY 用户,设备 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你好,如果有其他字段不相同的话,又该如何处理?比如下面的记录用户 设备 时间 类型 状态A aaa getdate() 0 正常A aaa getdate()-1 1 报停 B bbb getdate() 1 报停B bbb getdate()-1 0 正常我想获得的结果集是:用户 设备 时间 类型 状态A aaa getdate() 0 正常B bbb getdate() 1 报停 SELECT * FROM( SELECT ROW_NUMBER()OVER(PARTITION BY 用户,设备 ORDER BY 时间 DESC)RN ,* FROM TB)TWHERE RN=1SQL 2005+有效 select name ,device,MAX(t_date) as t_date,type ,state from #a where state='正常' group by name,device,type,state select * from TB awhere not exist (select * from TB where 用户=a.用户 and 时间 > a.时间) select * from Tb as awhere not exists(select 1 from Tb as b where b.用户=a.用户 and a.设备=b.设备 and b.时间 > a.时间) CTE 递归超过100次,出错了咋办? SQL 查询语句请教 2(由于无法修改帖子,把完整图和结果帖在此)0 一个存储过程如何返回两个记录集啊? 大家好,请教一个SQL语句 错误提示:提示”[Microsoft][ODBC SQL Server Driver]COUNT 字段不正确或语法错误“ power函数问题 如何备份数据库?谢谢!(从别的机器备份到本机) 简单问题,关于insert怎么判定插入重复。 求一个SQL语句 求一sql语句 MS SQL Server 2008在恢复中断后,打开不了数据 关于sql数据累加后取值问题
用户 设备 时间 类型 状态
A aaa getdate() 0 正常
A aaa getdate()-1 1 报停
B bbb getdate() 1 报停
B bbb getdate()-1 0 正常
我想获得的结果集是:
用户 设备 时间 类型 状态
A aaa getdate() 0 正常
B bbb getdate() 1 报停
SELECT ROW_NUMBER()OVER(PARTITION BY 用户,设备 ORDER BY 时间 DESC)RN
,*
FROM TB
)T
WHERE RN=1SQL 2005+有效
from TB a
where not exist (select * from TB where 用户=a.用户 and 时间 > a.时间)
from Tb as a
where not exists(select 1 from Tb as b where b.用户=a.用户 and a.设备=b.设备 and b.时间 > a.时间)