J'ai quatre tables comme indiqué ci-dessous dans DB oracle, la liste des employés est mappée avec des ID de bureau (m_office contient des ID de bureau et des noms Office). Tous les bureaux sont soit Division ou Subdivision. Encore Toutes les Subdivisions appartiennent aux Divisions. Je dois trouver le nombre d'employés par division (le nombre de divisions devrait inclure les employés appartenant à la subdivision aussi bien) comme indiqué dans le dernier tableau. (Comme sa base de données de travail ne peut donc pas changer la structure). Pas en mesure de trouver la solution. Toute aide est très appréciable. Merci d'avance.Joindre quatre tables SQL
TEST_EMPLOYEELIST
EmpId EmpName Office_id
--------------------------------
1 Alex O1
2 John O1
3 Bob O3
4 Max O5
5 Nick O5
6 Jack O1
7 Paul O2
TEST_M_OFFICE
office_id office_name
------------------------------
O1 Kamrup Division
O2 Nalbari Division
O3 Barpeta Division
O4 Nalbari RR Subdivision
O5 Barpeta SR Subdivision
O6 Barpeta RR Subdivision
TEST_DIVISION
division_id division_name
-----------------------------------
D1 Kamrup Division
D2 Nalbari Division
D3 Barpeta Division
D4 Bongaigon Division
D5 Rangia Division
TEST_DIV_SUBDIV_MAPPING
subdivision_id subdivision_name division_id
------------------------------------------------------
S1 Nalbari RR Subdivision D2
S2 Barpeta SR Subdivision D3
S3 Barpeta RR Subdivision D3
S4 Rangia RR Subdivision D5
S5 Kamrup RR Subdivision D1
requis: enregistrements Division_wise (y compris le nombre de subdivisions)
division_name count
----------------------------
Kamrup Division 3
Nalbari Division 1
Barpeta Division 3
Bongaigon Division 0
Rangia Division 0
C'est ce que je l'ai essayé jusqu'à présent:
select b.office_name,
count(*)
from test_employeelist a,
test_m_office b
where a.officeid = b.office_id
group by b.office_name;
Qu'avez-vous essayé jusqu'à maintenant? –
'sélectionner b.office_name, compter (*) à partir de test_employeelist a, test_m_office b où a.officeid = b.office_id groupe par b.office_name;' Mais il ne donne que des détails de comptage au bureau. Je ne suis pas en mesure de trouver une solution pour mapper le nombre de sous-divisions de la division à partir de la table TEST_DIV_SUBDIV_MAPPING. –
Ajouter le commentaire ci-dessus à votre question. –