我正在尝试在 Drupal 站点上选择重复的节点,基本上我需要选择共享公共(public)“tnid”(翻译节点 ID)并且共享相同“语言”的节点。
但是我不知道如何编写查询,我想我做了第一部分,找到具有共同 tnid 的节点,就像这样
SELECT origin.nid, origin.tnid, origin.title, origin.language
FROM node AS origin
JOIN (select nid, tnid from node
group by tnid having count(tnid) > 1) common_tnid ON common_tnid.tnid = origin.tnid
#JOIN node common_lang ON common_lang.language = origin.language
AND common_lang.tnid = origin.tnid
WHERE origin.tnid != 0
考虑到语言部分是我的一大障碍,我如何将其添加到查询中?因此,我尝试了很多东西。评论。
最佳答案
试试这个:
SELECT
table1.nid nid,
table1.tnid tnid,
table1.language language,
table1.title title
FROM
(
SELECT *
FROM
table1
GROUP BY
tnid, language
HAVING
COUNT(*) > 1
) dupe
LEFT JOIN
table1
ON dupe.tnid = table1.tnid
AND dupe.language = table1.language
SQL fiddle :http://sqlfiddle.com/#!9/294cc/1/0
关于mysql - 查找具有共同属性的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29793927/