我的表有重复的ID,所以我想从表中返回一行,其中包含重复的ID。 需要帮助,提前致谢。
示例:
ID | NAME |CODE
-----------------
101 | XXX | A
101 | XXX | B
101 | XXX | C
102 | XXX | A
102 | XXX | B
103 | XXX | A
103 | XXX | C
104 | XXX | C
104 | XXX | C
104 | XXX | A
104 | XXX | B
我需要从表格中只返回一个ID,因此预期的输出将是..
ID | NAME |CODE
-----------------
101 | XXX | A
102 | XXX | B
103 | XXX | B
104 | XXX | A
例如,我在这里只占用了四列,但在我的数据库中,我的表有30到40行。
答案 0 :(得分:0)
这会给出id
的列表以及具有倍数的所有id
的{{1}}行数。
id
答案 1 :(得分:0)
假设您的ID为not null
和unique
,您可以使用以下sql来获取所需的行:
select * -- to get the complete row
from myTable
where id in
(
select id
from myTable
group by id
having count(1)>1);
答案 2 :(得分:0)
这会给出id
的列表以及具有倍数的所有id
的{{1}}行数。
id
答案 3 :(得分:0)
select ID, count(ID) from My_Table
Group by ID
having count(ID)>1
此查询允许您选择在表My_Table
中出现多次的所有ID