重复的MySQL条目的输出列ID

时间:2019-03-18 19:57:38

标签: mysql duplicates output

我有一个表,其中包含“ ticket_id”和“ subject”列。

我想在“主题”列中搜索重复项,然后分别输出重复项“ ticket_id”。

不幸的是,我不知道该怎么做。

我目前有这个查询:

SELECT subject, COUNT(*) FROM ost_ticket__cdata GROUP BY subject HAVING COUNT(subject) > 1

哪项效果很好,请给我“主题”列中所有重复条目的列表和计数,但是如何获得它们的“ ticket_id”?

该表称为“ ost_ticket__cdata”,其中包含两列:“ ticket_id”和“主题”

2 个答案:

答案 0 :(得分:0)

只需将您的查询用作子查询来过滤出行。例如:

select *
from ost_ticket__cdata
where subject in (
  SELECT subject FROM ost_ticket__cdata GROUP BY subject HAVING COUNT(subject) > 1
)

答案 1 :(得分:0)

使用EXISTS,您检查具有相同subject但不同的ticket_id的行:

SELECT t.ticket_id
FROM ost_ticket__cdata t
WHERE EXISTS (
  SELECT 1 FROM ost_ticket__cdata
  WHERE ticket_id <> t.ticket_id AND subject = t.subject
)
ORDER BY t.ticket_id