|
蓝森林 http://www.lslnet.com 2006年8月26日 15:18
[求助] 怎么样才能把表中这些数据取出来?SQL 实现~
例子:
列名:
ID NAME AGE WEIGHT
01 a 22 30
01 a 23 30
02 b 23 35
举的例子可能不恰当,意思就这样:把这个表中ID,NAME相同的行都取出来,结果如下
01 a 22 30
01 a 23 30
谢谢了
如果这个问题没人解决的了,或是不屑解决的话,鄙人将不再踏入这片土地
伤心啊!· |
select * from t
where (id,name) in
(select id,name
from t
group by id,name
having count(*) > 1) |
最好是用decode()比较好实现 |
版主的想法是没有错
不过语法好像有错误阿
因为where (id,name) in 好像where后面只能选取一个字段名阿,2个总是抱错啊。。。
郁闷,等待ing |
这样可以吗?
select * from t
where (id||name) in
(select id||name
from t
group by id||name
having count(*) > 1)
John |
楼上用的是什么语言啊?
|| 这个符号起什么作用阿??
这个问题的确比较棘手阿~~
继续等待ing |
还没解决就沉了,我顶上去 |
select b.*,a.AGE,a.WEIGHT from (select ID, NAME,count(*) from D Group by ID NAME Having Count(*)>1)b,D as a where b.ID=a.ID(+) and b.Name=a.Name(+)
试试看…… |
SQL> select a.* from test a,test b where a.id=b.id and a.name=b.name and a.rowid<>b.rowid;
ID NAME AGE WEIGHT
---------- ---------- -------------------- --------------------
1 a d s
1 a b c
2 xd ds ds
2 xd ds sds
SQL> select * from test;
ID NAME AGE WEIGHT
---------- ---------- -------------------- --------------------
1 a b c
1 a d s
2 xd ds sds
2 xd ds ds
4 a ds ds |
|| 是连接符号。
John |
-->
谢谢阿,这个方法应该可以
我试试 |
| |