Probleme d'écriture de requete en SQL : - SQL/NoSQL - Programmation
Marsh Posté le 14-09-2002 à 01:12:06
COUNT(DISTINCT Champ4)
Par contre, chais pas si MySQL comprend cette bête là
En tout cas, MSSQL et Oracle le supportent
Marsh Posté le 16-09-2002 à 09:31:07
Select champ1, champ2,count(distinct champ3) from table
group by champ1, champ2
Marsh Posté le 14-09-2002 à 01:09:09
Dans une table, Les champs suivants :
Champ1 champ2 champ3 champ4
0001 AAAAA J 18
0001 AAAAA J 19
0001 BBBBB J 51
0001 CCCCC B 55
0005 AZAZA J 44
0008 AQAQA J 74
0008 QQQQQ J 11
0008 QQQQQ J 12
Voilà, ma recherche est la suivant savoir combien de fois j'ai l'information "J" dans le champ 3 avec un regroupement sur le champ 1 et 2 ...
J'ai ddonc écrit la requete suivante :
SQL = "Select Champ1, champ2 from TABLE Where champ3 = 'J ' group by Champ1, champ2"
Et ensuite je fais une requete en boucle pour compter le nombre de ligne de résultat....
Problème : la table fais plus de 20 000 lignes, et donc le traitement est long....
J'ai tenté de faire une requete avec COUNT, mais le problème est que le regroupement que je trouve n'est pas bon :
SQL = "Select Count(champ4) as COUNTPDC from TABLE Where ((champ3) = 'J ' group by Champ1, champ2"
Lorsque l'on regarde les données dans la table, la ligne 1 et 2 est identique et doit compter pour 1 dans le résultat au lieu de 2. Et de plus cette requete ne me donne pas 1 chiffres mais là aussi une serie de ligne que je dois compter.
N'y a t il pas une solution en SQL pour ecrire une ligne et avec 1 chiffre en retour dans un délai court sans passé par un comptage de ligne à ligne ?
Merci de votre aide, j'ai l'impression de tricoter...
---------------
http://www.arome.org/