读书人

问一条sql语句多谢

发布时间: 2012-01-09 21:05:42 作者: rapoo

问一条sql语句,谢谢~
序号 值 data1……data96
1 2 ……
1 3 ……
2 4 ……
2 5 ……
有什么好地sql得到这个结果(按序号分组,然后求最大值的整条记录)
1 3 data1……data96
2 5 data1……data96

[解决办法]
select id,max(value) from aa group by id
[解决办法]
select xihao,zhi,data
from table
where zhi=(select max(zhi)
from table
where group by xihao)
[解决办法]
就是横表纵向输出

给你个例子:

ORD_ID OPT
------ ----------
1 10
1 20
1 30
1 40
1 50
2 50
2 40
2 20

已选择8行。

SQL> select ord_id, max(sys_connect_by_path(opt, ' ')) s_opt
2 from (select ord_id, opt, lag(opt) over(partition by ord_id order by opt) l_opt
3 from t)
4 start with l_opt is null
5 connect by ord_id = prior ord_id and prior opt = l_opt
6 group by ord_id;

ORD_ID S_OPT
------ --------------------------------------------------
1 10 20 30 40 50
2 20 40 50

[解决办法]
SELECT * FROM 表 WHERE 值=max(值) GROUP BY 序号
[解决办法]

select 序号, max( 值) from 表名 group by 序号

就可以啦!


[解决办法]

探讨
donald82
不好意思,我刚才没说清楚 值字段可能重复

序号 值 时间 data1……data96
1 2 1 ……
1 3 2 ……
1 3 3 ……
2 4 4 ……
2 5 5 ……
有什么好地sql得到这个结果(按序号分组,然后求最大值的整条记录)
1 3 data1……data96
2 5 data1……data96

[解决办法]
如果有重复都列出的话如此

SQL code
select * from mytable where number in (select max(value) from mytable group by number)
[解决办法]
加distinct就可以了吧
[解决办法]
探讨
donald82
不好意思,我刚才没说清楚 值字段可能重复

序号 值 时间 data1……data96
1 2 1 ……
1 3 2 ……
1 3 3 ……
2 4 4 ……
2 5 5 ……
有什么好地sql得到这个结果(按序号分组,然后求最大值的整条记录)
1 3 data1……data96
2 5 data1……data96

读书人网 >Java Web开发

热点推荐