0

お詫び: 重複は同じ列内にある必要があると言いたかったのです。

次のコードがあります。

SELECT m.* FROM ( 
    SELECT text 
    FROM mytable 
    GROUP BY text 
    HAVING COUNT(*) > 1 ) q 
JOIN mytable m 
ON m.text = q.text

これにより、列の重複を検索でき、text正常に機能します。ただし、次のテーブルがあります。

q1a, q2a, q3a, q4a, q5a

私が望むのは、クエリが重複のすべての列をチェックインすることです-これが可能で、誰かが私に指摘してもらえますか?

ありがとう、

H.

4

2 に答える 2

1

これは必要なものかもしれません。重複しているテキストと、一致が見つかった行と列が表示されます。

SELECT GROUP_CONCAT(id) ids,q1a text,1 col 
FROM myTable GROUP BY text HAVING COUNT(*)>1
UNION
SELECT GROUP_CONCAT(id),q2a text,2 
FROM myTable GROUP BY text HAVING COUNT(*)>1
UNION
SELECT GROUP_CONCAT(id),q3a text,3  
FROM myTable GROUP BY text HAVING COUNT(*)>1
UNION
SELECT GROUP_CONCAT(id),q4a text,4  
FROM myTable GROUP BY text HAVING COUNT(*)>1
UNION
SELECT GROUP_CONCAT(id),q5a text,5 
FROM myTable GROUP BY text HAVING COUNT(*)>1

でテストする SQLfiddle

于 2013-06-22T09:34:32.770 に答える