Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Besoin d'aide pour une requête....

4 réponses
Avatar
llopht
Salut à tous,

Besoin d'une petite aide... Si j'ai :

Bureau 1
Amoire 1
Dossier 1
Dossier 2
Dossier 3
Amoire 2
Dossier 1
Dossier 2
Bureau 2
Amoire 1
Dossier 1

Commentaire faire pour obtenir le résultat suivant :

Bureau Armoire Nombre de dossiers
--------------------------------------------------
Bureau 1 Armoire 1 3
Bureau 1 Armoire 2 2
Bureau 2 Armoire 1 1

A savoir la liste des Armoires par bureau avec le nombre de dossier qui
constitue chaque armoire ?

Pour chaque table j'ai un Id et les tables enfant ont un id vers la
table parente.

J'obtiens des requêtes ultra compliqué alors que ça doit pas être
sorcier....

Merci

llopht

4 réponses

Avatar
TedIF
> Besoin d'une petite aide... Si j'ai :

Bureau 1
Amoire 1
Dossier 1
Dossier 2
Dossier 3
Amoire 2
Dossier 1
Dossier 2
Bureau 2
Amoire 1
Dossier 1

Commentaire faire pour obtenir le résultat suivant :

Bureau Armoire Nombre de dossiers
--------------------------------------------------
Bureau 1 Armoire 1 3
Bureau 1 Armoire 2 2
Bureau 2 Armoire 1 1

A savoir la liste des Armoires par bureau avec le nombre de dossier qui
constitue chaque armoire ?

Pour chaque table j'ai un Id et les tables enfant ont un id vers la table
parente.

J'obtiens des requêtes ultra compliqué alors que ça doit pas être sorcier....

Merci

llopht



Une requête du genre (non testé) ?

select bureau, armoire, sum(dossier) as nb_dossier
from bureau
inner join armoire on armoire.id_bureau = bureau.id_bureau
inner join dossier on dossier.id_armoire = armoire.id_armoire
group by bureau, armoire

--

Dominique
Avatar
llopht
Non non elle existe mais j'essaye de le refaire en plus simple...

D'autre part, j'ai légèrement oublié un paramètre il me faut aussi la
les armoires qui contiennent 0 dossier. Sans ça c'était effectivement
plus simple...

Donc :


Bureau 1
Amoire 1
Dossier 1
Dossier 2
Dossier 3
Amoire 2
Dossier 1
Dossier 2
Armoire 3

Devient :

Bureau Armoire Nombre de dossiers
--------------------------------------------------
Bureau 1 Armoire 1 3
Bureau 1 Armoire 2 2
Bureau 1 Armoire 3 0
Avatar
Fr
Bonjour,

Je ferais (pour avoir aussi armoire vide) :

SELECT BUREAU.ID,
ARMOIRE.ID,
COUNT(DOSSIER.ID)
FROM BUREAU INNER JOIN ARMOIRE ON (BUREAU.ID=ARMOIRE.ID_BUREAU)
LEFT OUTER JOIN DOSSIER ON
(ARMOIRE.ID=DOSSIER.ID_ARMOIRE)
GROUP BY BUREAU.ID,ARMOIRE.ID

ou alors pour avoir les noms (si toutefois vous avez une colonne nom dans
vos table)

SELECT MAX(BUREAU.NOM),MAX(ARMOIRE.NOM),COUNT(DOSSIER.ID)

FROM BUREAU INNER JOIN ARMOIRE ON (BUREAU.ID=ARMOIRE.ID_BUREAU)

LEFT OUTER JOIN DOSSIER ON (ARMOIRE.ID=DOSSIER.ID_ARMOIRE)

GROUP BY BUREAU.ID,ARMOIRE.ID

Bon requetage ;-)





"TedIF" a écrit dans le message de news:

Besoin d'une petite aide... Si j'ai :

Bureau 1
Amoire 1
Dossier 1
Dossier 2
Dossier 3
Amoire 2
Dossier 1
Dossier 2
Bureau 2
Amoire 1
Dossier 1

Commentaire faire pour obtenir le résultat suivant :

Bureau Armoire Nombre de dossiers
--------------------------------------------------
Bureau 1 Armoire 1 3
Bureau 1 Armoire 2 2
Bureau 2 Armoire 1 1

A savoir la liste des Armoires par bureau avec le nombre de dossier qui
constitue chaque armoire ?

Pour chaque table j'ai un Id et les tables enfant ont un id vers la table
parente.

J'obtiens des requêtes ultra compliqué alors que ça doit pas être
sorcier....

Merci

llopht



Une requête du genre (non testé) ?

select bureau, armoire, sum(dossier) as nb_dossier
from bureau
inner join armoire on armoire.id_bureau = bureau.id_bureau
inner join dossier on dossier.id_armoire = armoire.id_armoire
group by bureau, armoire

--

Dominique




Avatar
GLB - Gilles LE BARBIER
select bureau, armoire, sum(dossier) as nb_dossier
from bureau
inner join armoire on armoire.id_bureau = bureau.id_bureau
LEFT OUTER join dossier on dossier.id_armoire = armoire.id_armoire
group by bureau, armoire


"llopht" a écrit dans le message de news:

Non non elle existe mais j'essaye de le refaire en plus simple...

D'autre part, j'ai légèrement oublié un paramètre il me faut aussi la les
armoires qui contiennent 0 dossier. Sans ça c'était effectivement plus
simple...

Donc :


Bureau 1
Amoire 1
Dossier 1
Dossier 2
Dossier 3
Amoire 2
Dossier 1
Dossier 2
Armoire 3

Devient :

Bureau Armoire Nombre de dossiers
--------------------------------------------------
Bureau 1 Armoire 1 3
Bureau 1 Armoire 2 2
Bureau 1 Armoire 3 0