首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

问一个SQL语句。解决办法

2012-04-25 
问一个SQL语句。数据库表格简化结构,col1 col2 col3121122224232335323这是3个列。首先group by col2那么分

问一个SQL语句。
数据库

表格简化结构,

col1 col2 col3 
1 2 1
1 2 2
2 2 4
2 3 2
3 3 5
3 2 3

这是3个列。首先group by col2那么分组以后我想用having 对每个组进行排列,不是这个数据结果,
也就是说
最后结果应该是 

1 2 1
1 2 2
3 2 3
3 2 4
2 3 2
3 3 5


然后 获取每个组的第一条数据

也就是 

1 2 1
2 3 2 

谢谢各位高手 帮小弟哈



[解决办法]
select * from
(select *,row_number() over(partition by col2 order by col2) as rownum
from col表) as tb1
where rownum<2
[解决办法]

SQL code
select col1,col2,col3 from(select *,rank() over (order by col2) as nn1,rank() over (order by col2,col1,col3) as nn2 from table1 ) a where nn1=nn2 

热点排行