[SQL] Prob opérateur logique AND OR XOR
Résolu
goldo
Messages postés
74
Statut
Membre
-
gabyzans -
gabyzans -
Bonjour,
J'ai un petit soucie pour une requête SQL d'ordre logique je pense.
Le but de la requête est d'établir une moyenne sur le volume de vente mensuel, c'est à dire prendre le volume vendu par tous les mois de toutes les années et d'en faire une moyenne.
Là il n'y a pas de problème, tout va bien.
Maintenant ce que je souhaite c'est qu'il ne prend pas en compte le mois courant de l'année courante.
Donc dans le WHERE J'essaie de placer la condition mais je n'y arrive pas.
Comment faire pour dire que l'année courante ET/ASSOCIER avec le mois courant, ne passe pas dans la requete.
Comment dire qu'il faut que les 2 conditions en même temps, l'un avec l'autre doivent être réalisés
M'auriez vous compris lol ?
J'ai un petit soucie pour une requête SQL d'ordre logique je pense.
Le but de la requête est d'établir une moyenne sur le volume de vente mensuel, c'est à dire prendre le volume vendu par tous les mois de toutes les années et d'en faire une moyenne.
SELECT avg(qteVendu) as moyenne FROM ( SELECT sum(qte) AS qteVendu, MONTH(dateVente) as mois, YEAR(dateVente) as annee FROM ligneVenteThe, vente WHERE vente.numVente=ligneVenteThe.numVente AND ligneVenteThe.refThe='azerty' and refMag='vdtDK' GROUP BY MONTH(dateVente), YEAR(dateVente) )
Là il n'y a pas de problème, tout va bien.
Maintenant ce que je souhaite c'est qu'il ne prend pas en compte le mois courant de l'année courante.
Donc dans le WHERE J'essaie de placer la condition mais je n'y arrive pas.
WHERE blablabla AND ( MONTH(dateVente)<>MONTH(date()) AND YEAR(dateVente) <> YEAR(date()) )
Comment faire pour dire que l'année courante ET/ASSOCIER avec le mois courant, ne passe pas dans la requete.
Comment dire qu'il faut que les 2 conditions en même temps, l'un avec l'autre doivent être réalisés
M'auriez vous compris lol ?
A voir également:
- Sql xor
- Logiciel sql - Télécharger - Bases de données
- A xor b xor c ✓ - Forum PHP
- Requete sql pix - Forum PHP
- Additions et multiplication dans des requêtes SQL ✓ - Forum MySQL
- Sql query download - Télécharger - Gestion de données
3 réponses
Salut,
Tout ce que tu veux c'est ne pas trouver mois courant et anne_courante en même temps?
C'est donc un "non(a ET b)" :-)
Ou encore un "non a OU non b"
Soit:
Ou encore:
Tout ce que tu veux c'est ne pas trouver mois courant et anne_courante en même temps?
C'est donc un "non(a ET b)" :-)
Ou encore un "non a OU non b"
Soit:
WHERE blablabla AND NOT( MONTH(dateVente)=MONTH(date()) AND YEAR(dateVente) = YEAR(date())
Ou encore:
WHERE blablabla AND ( MONTH(dateVente)<>MONTH(date()) OR YEAR(dateVente) <> YEAR(date())