Je me bats pour obtenir un COUNT DISTINCT travailler avec SQL DISTINCT SELECTSQL Sélection Distinct Nombre d'éléments où 2 conditions sont remplies
Je ne sais pas si je devrais être même de distinct ici, mais je l'ai obtenu il correct à l'aide d'un sous-requête, bien qu'il soit très lourd de traitement sage.
Cette requête fait ce que je veux en fin de compte des résultats sages (sans le poids)
SELECT DISTINCT
product_brandNAME,
product_classNAME,
(SELECT COUNT(productID) FROM products
WHERE products.product_classID = product_class.product_classID
AND products.product_brandID = product_brand.product_brandID) as COUNT
FROM products
JOIN product_brand
JOIN product_class
ON products.product_brandID = product_brand.product_brandID
AND products.product_classID = product_class.product_classID
GROUP BY productID
ORDER BY product_brandNAME
Cela se rapproche, et est beaucoup plus efficace, mais je ne peux pas obtenir le nombre de travail, il ne compte (évidemment) le nombre distinct qui est 1.
SELECT DISTINCT product_brandNAME, product_classNAME, COUNT(*) as COUNT
FROM products
JOIN product_brand
JOIN product_class
ON products.product_brandID = product_brand.product_brandID
AND products.product_classID = product_class.product_classID
GROUP BY productID
ORDER BY product_brandNAME
Toutes les suggestions, je suis sûr que sa petite, et ont fait des recherches sur le net pendant des heures pour une réponse sans succès pour 2 conditions à satisfaire.
Merci,
Merci Lieven, qui était proche de la droite, mais me mettre sur la bonne voie, je viens de prendre le | GROUP BY productID '|, et son vainqueur, merci beaucoup, sauvé moi des tonnes de temps :) – wingman