sqlserver group by 分组后,取每个分组的第一条数据 |
您所在的位置:网站首页 › sqlserver取第一条数据 › sqlserver group by 分组后,取每个分组的第一条数据 |
1 --建立测试环境 CREATE TABLE table1(a VARCHAR(10),b VARCHAR(10),c VARCHAR(10)); --插入数据 INSERT INTO table1 VALUES('2004','12','storea'); INSERT INTO table1 VALUES('2005','07','storea'); INSERT INTO table1 VALUES('2004','11','storeb'); INSERT INTO table1 VALUES('2005','06','storeb'); COMMIT; 2 取分组记录的第一条 解法一 SELECT a.* FROM table1 a INNER JOIN ( SELECT MAX(a + b)TIME FROM table1 GROUP BY c ) b ON a.a + a.b = b.TIME 解法二 SELECT * FROM scott.table1 a WHERE NOT EXISTS (SELECT 1 FROM scott.table1 b WHERE a.a=b.a AND TO_NUMBER(a.b) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |