SQL SEVER 怎么取三列数据的sql 多列取最大值者

编程开发子分类sohocoder收集全网最新、最全项目(pythontip出品)
sqlserver group by 分组后,取每个分组的第一条数据 - 涛声依旧至圣
1 --建立测试环境
VARCHAR(10),b
VARCHAR(10),c
VARCHAR(10));
--插入数据
INTO table1 VALUES('2004','12','storea');
table1 VALUES('2005','07','storea');
table1 VALUES('2004','11','storeb');
table1 VALUES('2005','06','storeb');
2 取分组记录的第一条
SELECT * FROM scott.table1 a WHERE NOT EXISTS
FROM scott.table1 b WHERE a.a=b.a AND TO_NUMBER(a.b)&TO_NUMBER(b.b));
SELECT * FROM (SELECT t.*, RANK()
OVER (PARTITION BY t.a ORDER BY t.b DESC) AS drank FROM table1 t) a WHERE drank=1
SELECT t.*,SUM(b) OVER (PARTITION BY t.a) AS aaa,
SUM(b) OVER () AS bbb FROM table1 t ORDER BY t.a,t.b
------
SELECT d.department_id , e.last_name, e.salary, RANK()
OVER (PARTITION BY e.department_id ORDER BY e.salary) AS drank FROM employees e, departments d WHERE e.department_id = d.department_id
AND d.department_id IN ('60', '90');
原文链接:/articles/MzIvUr
阅读: 7218 |

我要回帖

更多关于 sql取某列最大值 的文章

 

随机推荐