aide sur les requetes imbriqués

Par guilfred, il y a 7 ans


Base de données MySQL

Bonjour,

Ce que je fais

SELECT DISTINCT v.name FROM visiteur v WHERE v.link LIKE '%site1%' AND v.name NOT IN (SELECT u.name FROM unsuscriber u WHERE u.link LIKE '%site1%')"

Ce que je veux

A la longue j'aurai trop de requêtes imbriqués pourriez vous m'aider sur cette requête ainsi je pourrai ajouter d'autres requetes par des jointures sans tout le temps faire des requêtes imbriqués de ce genre

3 réponses

cyr1l, il y a 7 ans

Bonjour,

Voici ta requête modifiée afin d'utiliser une jointure:

SELECT DISTINCT v.name FROM visiteur v LEFT JOIN unsuscriber u ON v.name = u.name and u.link LIKE '%site1%' WHERE v.link LIKE '%site1%' AND u.name is null

Le principe est de faire un LEFT JOIN qui permet de retourner les résultats même s'il n'y a pas de match avec la table visiteur.
Puis dans le where on ajoute un check "is null" sur un champ de la table visiteur afin de ne pas retourner les enregistrementsqui match avec cette table.

guilfred, il y a 7 ans

Merci cyr1l

Lartak, il y a 7 ans

Bonsoir.
Marques ton sujet comme résolu si tel est le cas.