J'ai trois tables de liaison :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
pays (id_pays, id_truc)
region(id_region, id_truc)
dpt (id_dpt, id_truc)
et une table :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
truc(id_truc, machin, bidule)
je voudrais récupérer les trucs qui sont référencés au moins 3 fois dans l'ensemble des tables de liaison. Ex :
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
Pays
p1 t1
p1 t2
 
Region
r1 t1
r2 t1
r3 t2
 
Dpt
d1 t1
d2 t3
 
Truc
t1 a b
t2 c d
t3 e f
La requête que j'essaie péniblement de faire devrait donner t1 car :
select count(*) from pays = 1 pour t1 et t2
select count(*) from region = 2 pour t1 et = 1 pour t2
select count(*) from dpt = 1 pour t1 et t3
et la somme des 3 donne :
pour t1 : 4
pour t2 : 2
pour t3 : 1