原表:
sta time
1 1:00:01
1 1:00:02
2 1:00:03
2 1:00:04
1 1:00:05
1 1:00:06
查询后
sta time
1 1:00:01
2 1:00:03
1 1:00:05
状态的值会有多种1,2,3,4,5,交替无规律出现的,然后相同状态会有几条记录是不确定的,不一定只有两条记录,也可能只有一条,也可能有100条
简单说就是重复记录取第一条。
请问这个SQL怎么写?
------解决思路----------------------
在sql后面GROUP BY sta可以实现。mysql的group by 默认取得就是第一个
------解决思路----------------------
select sta, time from(
select if(sta != @tmp, 0, sta) changeFlag, @tmp:=sta sta, time from (
select sta, @tmp:='null', time from 表名) A) B where changeFlag = 0