Bonjour,
J'utilise MySQL 5.0.22.
Afin d'expliquer clairment mon probleme, voici d'abord la structure des tables impliquees:
Ownership : ID, ownershipData
Ownership_RealEstate : Ownership_ID, RealEstate_ID
RealEstate : ID, village, plot ( le numero de plot peut etre null )
La table Ownership_RealEstate est une table d'association pour matcher la relation N-M qui existe entre Ownership et RealEstate.
Le but de ma requete est de retrouver tous les ownerships qui sont exactement liés à une liste de RealEstate ( une liste de village.plot est passée en paramètre), ni plus ni moins.
En gros je voudrais pouvoir demander quels sont les ownership qui ont comme realestate number 1.1, 2.1, 3
Ce que je n'arrive pas à faire c'est le match exact de ma liste.
Voici la dernière version de ma requête ( qui ne marche toujours pas ):
C'est très volontiers que j'accepterait de l'aide
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
18 SELECT DISTINCT o.* FROM ownership AS o, ownership_realestate AS ore WHERE o.id = ore.ownerships_id AND ( SELECT count( * ) FROM ownership_realestate AS ore1, realestate AS re1 WHERE o.id = ore1.ownerships_id AND ore1.realEstates_id = re1.id ) = 2 AND ore.realEstates_id = ANY( SELECT re.id FROM realestate re WHERE ( concat( re.village, concat( '.', re.plot ) ) IN ( '1.1', '3') AND re.plot IS NOT NULL ) OR ( re.village IN ( '1.1', '3' ) AND re.plot IS NULL ) )
Merci d'avance
Partager