D dazzling Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #1 只有一个表A,里面有多个字段,比如F1,F2,F3...FX 现有F1,F2,F3的值相同的记录N条,但我只想得到其中一条, 如何做? 要求效率要高
S sefeng1982 Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #4 f1,f2,f3值相同???到底哪种相同说清楚, 1,是某一个字段的值 有重复, 2,是三个字段同时重复 3,是f1=f2=f3 这样的数据 先把问题说清楚了.应该不会很难.
Y yangyang200860 Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #5 select distinct f1,f2,f3 from A
李 李翔鹏 Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #6 select distinct f1,f2,f3 from A
H hongxing_dl Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #7 下面的语句可以: select f1,f2,f3,min(f4) as f4,min(f5) as f5,min(fx) as fx.. from table where ... group by f1,f2,f3
下面的语句可以: select f1,f2,f3,min(f4) as f4,min(f5) as f5,min(fx) as fx.. from table where ... group by f1,f2,f3
F fanybul Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #8 SELECT DISTINCT F1, F2, F3...Fx FROM TABLE1 这样试试吧
M mybabyben Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #9 select distinct f1,f2,f3 from A 不用试,这样写肯定可以
D dazzling Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #10 三个字段的值分别与其它记录相应值相等. 我得到的结果还要包括其它字段值F4,F5....FX等.
H hongxing_dl Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #11 select f1,f2,f3,min(f4) as f4,min(f5) as f5,min(fx) as fx.. from table where ... group by f1,f2,f3 楼主没试过?oracle里是行的
select f1,f2,f3,min(f4) as f4,min(f5) as f5,min(fx) as fx.. from table where ... group by f1,f2,f3 楼主没试过?oracle里是行的
D dazzling Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #12 楼上的是对的,但是 其中有个字段F12是MEMO类型的,MIN不了,啥办???
S sefeng1982 Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-02 #13 select top1 distinct * from table 这样就只有一条了啊
G gaobangsheng Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-03 #16 select * from Table A left outer join ( select distinct F1,F2,F3 from Table group by F1,F2,F3 ) B on A.F1=B.F1 and A.F2=B.F2 and A.F3=B.F3 你的要求: 三个字段的值分别与其它记录相应值相等. 我得到的结果还要包括其它字段值F4,F5....FX等. 得到的記錄還審和原來一樣啊,你這個問題出得就不合理,你又想得到F1,F2,F3的相同的,又想看到其他的記錄,而其他記錄又不一定相等,全部看到後,F1,F2,F3又重複了!
select * from Table A left outer join ( select distinct F1,F2,F3 from Table group by F1,F2,F3 ) B on A.F1=B.F1 and A.F2=B.F2 and A.F3=B.F3 你的要求: 三个字段的值分别与其它记录相应值相等. 我得到的结果还要包括其它字段值F4,F5....FX等. 得到的記錄還審和原來一樣啊,你這個問題出得就不合理,你又想得到F1,F2,F3的相同的,又想看到其他的記錄,而其他記錄又不一定相等,全部看到後,F1,F2,F3又重複了!
P pengjqx Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-03 #17 select * from 表A t where checksum(*) = (select top 1 checksum(*) from 表A where F1 = t.F1 and F2=t.F2 and F3=t.F3)
select * from 表A t where checksum(*) = (select top 1 checksum(*) from 表A where F1 = t.F1 and F2=t.F2 and F3=t.F3)
D dazzling Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-03 #18 to :hongxing_dl, 好人做到底, 那个MEMO字段无法min,怎么办???????????????????
勇 勇者 Unregistered / Unconfirmed GUEST, unregistred user! 2006-11-03 #19 表里有唯一字段吗,没有的话加个自增列(id) select * form a where id in (select min(id) as id from a group by F1,F2,F3)