PLSQL,HIBERNATE,一张表(care)中的两个字段a,b
id a b
1 10 20
2 20 30
3 10 15
4 20 40
5 10 20
6 30 30
7 30 50
8 20 30 我要按 a和b(同时作用) 来分组查出 表达所有内容(care.*),
如果单单查a和b的话,一个GROUP BY或者DISTINCT就可以了
select a,b from care group by a,b
结果是:
a b
10 20
20 30
10 15
20 40
30 30
30 50但是 group by要求 SELECT 的选项要属于 GROUP BY 的集合,所以不能 select * from care group by a,b
我要的结果就是 id a b
1 10 20
2 20 30
3 10 15
4 20 40
5 30 30
6 30 50
能不能用一条或两条语句就查出来,之前我是用循环做的,先GROUP BY出a和b,再按a和b的集合去作为 select * from 的条件取一条来 循环查询,但是数据量大的时候效率就低了,有没有更好的办法
id a b
1 10 20
2 20 30
3 10 15
4 20 40
5 10 20
6 30 30
7 30 50
8 20 30 我要按 a和b(同时作用) 来分组查出 表达所有内容(care.*),
如果单单查a和b的话,一个GROUP BY或者DISTINCT就可以了
select a,b from care group by a,b
结果是:
a b
10 20
20 30
10 15
20 40
30 30
30 50但是 group by要求 SELECT 的选项要属于 GROUP BY 的集合,所以不能 select * from care group by a,b
我要的结果就是 id a b
1 10 20
2 20 30
3 10 15
4 20 40
5 30 30
6 30 50
能不能用一条或两条语句就查出来,之前我是用循环做的,先GROUP BY出a和b,再按a和b的集合去作为 select * from 的条件取一条来 循环查询,但是数据量大的时候效率就低了,有没有更好的办法
解决方案 »
- 请教大侠,在oracle中,什么是machine arithmetic,什么是library arithmetic啊
- 小问题 来个高手解释下咯?
- 如何将行级触发器中的:old 和:new 这样的伪记录作为参数传递给一个function接收??
- Oracle10g recycle bin的問題
- 高手指教:我想将某一个字段的值并成一个字符串,该怎么做呢?
- 新手问题:利用ECLIPSE查询数据库的问题
- Oracle数据库别人能连上,我怎么就是不行?
- oracle数据库用BLOB字段如何存储JPG图?
- job_queue_processes与job?
- ORACLE 9i AS 到底能不能在RedHat 8.0上安装?
- 批量插入的效率问题!
- union all中排序问题
(
select distinct a , b from tb
) t
create or replace view v_care
as
select id,a,b from (select care.*,row_number() over(partition by a,b order by id) rn from care) where rn=1然后用 select * from v_care就顺利完成了