[SQL] Problème requête
Résolu
BeFLuo
Messages postés
10
Statut
Membre
-
BeFLuo Messages postés 10 Statut Membre -
BeFLuo Messages postés 10 Statut Membre -
Bonjour,
je suis en stage et je dois mettre en place un système de gestion de mailing list. Il peut y avoir une recherche selon la zone diffusion (exemple : 72 - 75 - 70), le département seul ou un (ou plusieurs) code postal précis, voire même les trois en même temps. Pour compliquer la chose, on peut inclure ou exclure ces trois champs. Exemple, si on veut envoyer des mails toutes les personnes inscrites hors zone de diffusion. J'ajoute à ma requête de base d'autres bout de requête qui correspondent à ma recherche, et c'est ici que mon problème intervient :
Lorsque que je fais une recherche en fonction de la zone de diffusion seule, en l'excluant cela fonctionne. Voici la requête :
SELECT * FROM table WHERE 1 AND FLOOR(dep/1000) NOT IN ('70','75','72')
J'ai bien un résultat
Cependant, si je veux tout de même le département 70 je l'ajoute à la requête :
SELECT * FROM table WHERE 1 AND ( FLOOR(dep/1000)='70') AND FLOOR(dep/1000) NOT IN ('70','75','72')
Et là il m'indique qu'il y a aucun résultat
Comment faire ?
J'espère que j'ai bien pu me faire comprendre...
Merci
je suis en stage et je dois mettre en place un système de gestion de mailing list. Il peut y avoir une recherche selon la zone diffusion (exemple : 72 - 75 - 70), le département seul ou un (ou plusieurs) code postal précis, voire même les trois en même temps. Pour compliquer la chose, on peut inclure ou exclure ces trois champs. Exemple, si on veut envoyer des mails toutes les personnes inscrites hors zone de diffusion. J'ajoute à ma requête de base d'autres bout de requête qui correspondent à ma recherche, et c'est ici que mon problème intervient :
Lorsque que je fais une recherche en fonction de la zone de diffusion seule, en l'excluant cela fonctionne. Voici la requête :
SELECT * FROM table WHERE 1 AND FLOOR(dep/1000) NOT IN ('70','75','72')
J'ai bien un résultat
Cependant, si je veux tout de même le département 70 je l'ajoute à la requête :
SELECT * FROM table WHERE 1 AND ( FLOOR(dep/1000)='70') AND FLOOR(dep/1000) NOT IN ('70','75','72')
Et là il m'indique qu'il y a aucun résultat
Comment faire ?
J'espère que j'ai bien pu me faire comprendre...
Merci
A voir également:
- [SQL] Problème requête
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Sql (+) - Forum Programmation
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
- Requête sql pour afficher uniquement les fleurs dont le prix est strictement inférieur à 10 euros - Forum calculatrices