Quelqu'un at-il des idées sur la façon dont je peux mieux écrire ce morceau de code?Meilleur moyen d'écrire ceci: SELECT * avec COUNT> 1
SELECT Column_A, Column_B, Column_C, Column_D, Column_E
FROM TABLE_A
WHERE Column_A IN
(
SELECT Column_A
FROM
(
SELECT Column_A, COUNT(DISTINCT COLUMN_B) AS Column_B_Count
FROM TABLE_A
GROUP by Column_A
HAVING Column_B_Count > 1
) AS A
)
GROUP BY Column_A, Column_B, Column_C, Column_D, Column_E;
Merci!
Chaque fois que vous sélectionnez 'GROUP BY', chaque colonne que vous sélectionnez signifie vraiment' DISTINCT' à la place, bien qu'à 5 colonnes, elle commence à avoir l'air suspecte. Vous pouvez mettre des fonctions d'agrégat (comme 'COUNT') après la clause' HAVING', ce qui signifie que vous pouvez l'enlever de la liste 'SELECT' et vous débarrasser de la sous-requête du milieu. Autre que cela, nous avons besoin de plus d'informations sur votre table/données. –