当前位置: 代码迷 >> Sql Server >> 请问这个SQL的写法
  详细解决方案

请问这个SQL的写法

热度:64   发布时间:2016-04-24 09:52:42.0
请教这个SQL的写法
原表:
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
  相关解决方案