Bonjour,
Tout d'abord meilleurs voeux aux utilisateurs de ce forum :-)
Ensuite mon premier problème de 2011...!
Je souhaiterais soustraire le nombre d'enregistrement résultant d'une requête à une autre requête.
En clair, d'un côté j'effectue la requête suivante pour compter des enregistrement répondant à une condition :
D'un autre côté, une autre requête me sert à compter les doublons sur un certain nombre de critères :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 SELECT SUM(SUB1.ANN_17) AS NB_17, SUM(SUB1.ANN_79) AS NB_79, SUM(SUB1.ANN_85) AS NB_85, SUM(SUB1.ANN_86) AS NB_86 FROM ( SELECT (CASE WHEN ANN.cp like '17%' THEN 1 ELSE 0 END) AS ANN_17, (CASE WHEN ANN.cp like '79%' THEN 1 ELSE 0 END) AS ANN_79, (CASE WHEN ANN.cp like '85%' THEN 1 ELSE 0 END) AS ANN_85, (CASE WHEN ANN.cp like '86%' THEN 1 ELSE 0 END) AS ANN_86 FROM `im_property` ANN WHERE ANN.is_published =1 AND DATEDIFF( ANN.expired_at, now( ) ) > 0 )SUB1
je souhaiterais, pour chaque cas de la première requête déduire le nombre de ligne renvoyé par la requête...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT COUNT(*) AS NBR_DOUBLONS, `cp`,`type`, `type_transaction`,`description` FROM im_property WHERE cp like '17%' GROUP BY `cp`,`type`, `type_transaction`,`description` HAVING COUNT(*) > 1 ORDER BY `crpcen` ASC
J'ai essayé d'utiliser SELECT FOUND_ROWS( ) mais le problème est que la fonction renvoie le résultat à l'intérieur de la requête et donc génère une erreur dans MySQL...
Quelqu'un(e) peut il m'orienter vers une solution ?
Peut-être que je m'y prends mal....si il y a une autre méthode, je suis preneur
Merci d'avance
Partager