昨天 简单SQL语句,请进,在线!一会散分 (问题还没解决!!!) ( 积分: 50 )

  • 主题发起人 主题发起人 yf168
  • 开始时间 开始时间
Y

yf168

Unregistered / Unconfirmed
GUEST, unregistred user!

id code mc
1 01 A
2 02 B
3 01 C
4 03 D
5 02 B

我需要得到 Code,MC都不相同(重复的只要求取其中一条即可)的纪录,如
id code mc
1 01 A
2 02 B
3 01 C
4 03 D
这条语句以前写过,我有点忘了,请各位看看!
 

id code mc
1 01 A
2 02 B
3 01 C
4 03 D
5 02 B

我需要得到 Code,MC都不相同(重复的只要求取其中一条即可)的纪录,如
id code mc
1 01 A
2 02 B
3 01 C
4 03 D
这条语句以前写过,我有点忘了,请各位看看!
 
这是昨天问题 http://www.delphibbs.com/delphibbs/dispq.asp?lid=3223446
 
分数太小
 
SELECT code, mc, MIN(id)
FROM 表
GROUP BY code, mc
 
--不知道这样行不行你试试看
select min(id) ID, code, mc from TreeNode group by code, mc
 
TO: xianguo
你比我早! 没有抄你的啊! :) 怎么想到一块了
 
各位看清楚了,我要的是整个表的字段!
 
可能我举的例子不恰当
应该是一个表有很多字段,不是这么简单的三个字段。
不是这么简单的用group 能出来的
 
现在不是整个表的字段了吗?
 
你的结果里只列了三个字段呀
 
你可以通过这个再次做一次查询不就可以得到你需要的列了! 不过要求你的ID 是唯一的
比如:
select A.* from A inner join
(select min(id) ID, code, mc from TreeNode group by code, mc ) B
A.ID = B.ID and A.code = B.code and A.mc = B.mc
 
我是举了个例子,举了三个字段的,其实是很多字段的,
我想语句应该是 类似
select * from Table a where (select count(*) from Table b where a.code=b.code and a.mc=b.mc)>1 ....
(以前做过的,但是这条语句忘了,看来需要做笔记[:(])
 
SELECT * FROM 表
WHERE ID IN (SELECT MIN(ID) FROM 表 GROUP BY code, mc)
 
xianguo的很经典!很短,好谢谢,
当然也谢谢kk2000 饭前饭后
能帮我看看fastreport吗?[:D]
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
680
import
I
后退
顶部