次のクエリは、重複するソリューションのペアの束を返します。
SELECT *
FROM solutions s1, solutions s2
WHERE s2.ID <> s1.ID
AND s2.solution = s1.solution
私は単純に重複したソリューションの数を探しているので、うまくいきません(たとえば、重複がある場合は行n
を返しn!
ます) 。
次のクエリは、重複するソリューションのみを返すように機能するはずですが、代わりに 0 結果を返します。
SELECT *
FROM solutions s1
WHERE s1.ID IN
(
SELECT s2.ID
FROM solutions s2
WHERE s2.ID <> s1.ID
AND s2.solution = s1.solution
)
私は一生、理由を理解することはできません。私が認識していない MySQL の内部クエリに関する制限はありますか?