par
Burden » 01 août 2013, 13:36
Bonjour à tous et à toutes;
Voila je travail sur un projet d'automatisation de base de donnée via l'outil de reporting "BIRT REPORT". J travail sur une base de donnée "MYSQL" et j'utilise "Navicat" pour effectuer mes requêtes au préalable.
Je rencontre quelques problèmes sur certaines requêtes que je dois effectuer, alors voila, je vous sollicite car je tourne en rond depuis une semaine et je commence à saturer.
J'ai cette requête qui fonctionne:
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)
et m'affiche bien le résultat désiré:
Voir screen 2
Ce que je veux, c'est que la requete m'affiche également le résultat d'une autre ville, par exemple Saint Brieuc:
Voir screen 1
J'ai déjà essayer pas mal de manipulation et bidouillage divers. Par
exemple avec un union dans ce type la :
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)
UNION
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS SAINT_BRIEUC
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '1'
GROUP BY DATE(DATEDEM)
J'ai essayé un bon nombre de requêtes sans réussir à obtenir de
résultat intéressant
Je pensais utiliser une jointure mais après plusieurs essai, ça n'a
pas l'air de fonctionner non plus.
Select date(T1.datedem), "LANNION", "SAINT_BRIEUC"
from (SELECT DATEDEM, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)) as T1
,
(SELECT DATEDEM, COUNT(NUMDEMANDE) AS SAINT_BRIEUC
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '1'
GROUP BY DATE(DATEDEM)) as T2
where date(T1.datedem) = date(T2.datedem) ;
Mais j'obtiens ça:
Screen 5
Voila, j'ai essayé de vous exposer au mieux mon problème si quelqu'un a une idée je suis preneur.
Je vous remercie d'avance
Bonjour à tous et à toutes;
Voila je travail sur un projet d'automatisation de base de donnée via l'outil de reporting "BIRT REPORT". J travail sur une base de donnée "MYSQL" et j'utilise "Navicat" pour effectuer mes requêtes au préalable.
Je rencontre quelques problèmes sur certaines requêtes que je dois effectuer, alors voila, je vous sollicite car je tourne en rond depuis une semaine et je commence à saturer.
J'ai cette requête qui fonctionne:
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)
et m'affiche bien le résultat désiré:
Voir screen 2
Ce que je veux, c'est que la requete m'affiche également le résultat d'une autre ville, par exemple Saint Brieuc:
Voir screen 1
J'ai déjà essayer pas mal de manipulation et bidouillage divers. Par
exemple avec un union dans ce type la :
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)
UNION
SELECT DATE(DATEDEM) AS JOUR, COUNT(NUMDEMANDE) AS SAINT_BRIEUC
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '1'
GROUP BY DATE(DATEDEM)
J'ai essayé un bon nombre de requêtes sans réussir à obtenir de
résultat intéressant
Je pensais utiliser une jointure mais après plusieurs essai, ça n'a
pas l'air de fonctionner non plus.
Select date(T1.datedem), "LANNION", "SAINT_BRIEUC"
from (SELECT DATEDEM, COUNT(NUMDEMANDE) AS LANNION
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '2'
GROUP BY DATE(DATEDEM)) as T1
,
(SELECT DATEDEM, COUNT(NUMDEMANDE) AS SAINT_BRIEUC
FROM `info15`.DEMANDE
WHERE (YEAR(DATEDEM) = '2013' AND MONTH(DATEDEM) = '03') AND NUMUTI <> 778
AND ENTSER = '1'
GROUP BY DATE(DATEDEM)) as T2
where date(T1.datedem) = date(T2.datedem) ;
Mais j'obtiens ça:
Screen 5
Voila, j'ai essayé de vous exposer au mieux mon problème si quelqu'un a une idée je suis preneur.
Je vous remercie d'avance