MySQL COUNT(CAS OÙ ... PUIS de Colonne DISTINCTE)

Ma requête:

COUNT(
    CASE WHEN YEAR(FieldValue) = YEAR(CURDATE()) 
    AND MONTH(FieldValue) = MONTH(CURDATE())
    THEN 1
    END
) AS mtd

Je veux quelque chose comme:

COUNT(
    CASE WHEN YEAR(FieldValue) = YEAR(CURDATE()) 
    AND MONTH(FieldValue) = MONTH(CURDATE())
    THEN DISTINCT ColumnID
    END
) AS mtd

Cela donne une erreur. Je ne peux pas utiliser GROUPE PAR. Si j'ajoute DISTINCTES avant CAS, il ne fonctionne pas, soit il traite FieldValue colonne comme DISTINCTES, mais j'ai envie de compter ColumnID comme distinctes.

S'il vous plaît aider

Afficher l'intégralité de la requête. Avez-vous essayé d'ajouter le DISTINCT droite avant le cas, je.e: COUNT(DISTINCT CASE ...)

OriginalL'auteur GGio | 2014-05-20