回 帖 发 新 帖 刷新版面

主题:重复记录问题

各位大侠,请问如何把一个表中字段(如姓名,工资,年龄)都相同的记录全部显示出来。(比如有三条李四的记录就显示三条李四的记录)。

回复列表 (共10个回复)

沙发


select * from table where name='李四'

板凳


select * from tabel   where name='李四'[em11]

3 楼

如果还不知道是哪一条记录是重复的,该如何去查出重复的记录。

4 楼

你最好把把问题说清楚点,

5 楼

用模糊查找法吧
select * from table where name like '%李四%'

6 楼

我是说在一个表中存在重复的记录,也许是张三,也许是李四或者是黄五,但事先我并不知道是哪一条记录是重复的,我想通过查询找到这表中所有的重复记录。如有三条李四的记录就显示三条李四的记录,有四条张三的记录就显示条张三的记录,不管是谁的记录重复有多少条重复都要把它找出来。

7 楼

呵呵:

有一表TreeTest,如有字段:
id FParentID
1  123
2  123
3  456
4  654
5  456
6  000
输入下面查询语句后:
select * from TreeTest where FParentID in (select  FParentID  from  TreeTest group  by  FParentID  having  count(FParentID) > 1)

结果显示是:
id FParentID
1  123
2  123
3  456
5  456

8 楼

谢谢指教,但我这样写 sql.Add('select * from chengji where 姓名 in (select  姓名  from  chengji group  by  姓名  having  count(姓名) > 1)');
后不能执行并出现了提示:DBISAM Engine Error # 11949 SQL error -expression in HAVING clause not found in source columns .的提示,不知是什么意思。该怎样改。

9 楼

谁来帮一下我?

10 楼

你的代码无错,是否设置问题 或者你的表内根本无有"姓名"标题

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.sql.Clear;
ADOQuery1.SQL.Add('select * from TreeTest where FParentID in (select  FParentID  from  TreeTest group  by  FParentID  having  count(FParentID) > 1)');
ADOQuery1.Open;
end;

我来回复

您尚未登录,请登录后再回复。点此登录或注册