Requête avec plusieurs conditions
Résolu
nabil-bago
Messages postés
255
Date d'inscription
Statut
Membre
Dernière intervention
-
nabil-bago Messages postés 255 Date d'inscription Statut Membre Dernière intervention -
nabil-bago Messages postés 255 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis bloqué sur une requete sql server.
alors j'ai deux table
salarie(immatriculation,nom,prenom)
ATS(code,immatriculation,moi,annee,salaire)
je veux affiché les salaire d'un employer de différent mois de différente années
exemple je veux afficher le salaire d'un employer (immatriculation 11)
le mois de décembre 2018
le mois de janvier 2019
le mois de mars 2019
et voila la requete que j'ai essayer
Merci
je suis bloqué sur une requete sql server.
alors j'ai deux table
salarie(immatriculation,nom,prenom)
ATS(code,immatriculation,moi,annee,salaire)
je veux affiché les salaire d'un employer de différent mois de différente années
exemple je veux afficher le salaire d'un employer (immatriculation 11)
le mois de décembre 2018
le mois de janvier 2019
le mois de mars 2019
et voila la requete que j'ai essayer
select * from Salarie,ATS where (ats.immatriculation = salarie.immatriculation and ATS.Immatriculation = 11 ) where (ats.mois= 'decembre' and annee= 2018) where (ats.mois= 'janvier' and annee= 2019) where (ats.mois= 'mars' and annee= 2019)
Merci
A voir également:
- Requête avec plusieurs conditions
- Mise en forme conditionnelle excel plusieurs conditions - Guide
- Excel champ calculé avec condition - Forum Excel
- Mise en forme conditionnelle avec 2 conditions ✓ - Forum Bureautique
- Requête sql pix - Forum Python
- Je ne suis pas un robot confidentialité - conditions ✓ - Forum Windows 8 / 8.1
2 réponses
Bonjour,
Pour commencer... es-tu sûr que ta bdd est en SQL SERVER ? Si oui.. quelle version ? 2008 ? 2012 ? autre ?
Ensuite, ta requête n'est pas bonne.
Tu ne peux pas avoir plusieurs fois l'instruction "WHERE" dans ta requête.
Tu as sû utiliser des "AND" ... et bien... regarde aussi comment s'utilisent les "OR"
Au passage... utiliser des "string" pour les mois est une erreur...
Un mois.. c'est une valeur de 1 à 12 ... ce qui permet de faire des comparaisons si besoin...
On ne stocke jamais la valeur en "texte" .. ne serait-ce que pour les multi-langues..
On évite également de séparer les Années et les mois dans des colonnes différentes.
On utilisera, à la place, un champ de type DATE
(pour Janvier 2019 .. dans un champ date, tu aurais simplement écrit : 2019-01-01 .. pour le mois de Mars : 2019-03-01 .. etc...)
Là encore c'est pour faciliter les requêtes lorsqu'il faut manipuler/comparer des dates.
Je te laisse apporter les corrections et revenir vers nous si tu as toujours des soucis dans tes requêtes.
Pour commencer... es-tu sûr que ta bdd est en SQL SERVER ? Si oui.. quelle version ? 2008 ? 2012 ? autre ?
Ensuite, ta requête n'est pas bonne.
Tu ne peux pas avoir plusieurs fois l'instruction "WHERE" dans ta requête.
Tu as sû utiliser des "AND" ... et bien... regarde aussi comment s'utilisent les "OR"
Au passage... utiliser des "string" pour les mois est une erreur...
Un mois.. c'est une valeur de 1 à 12 ... ce qui permet de faire des comparaisons si besoin...
On ne stocke jamais la valeur en "texte" .. ne serait-ce que pour les multi-langues..
On évite également de séparer les Années et les mois dans des colonnes différentes.
On utilisera, à la place, un champ de type DATE
(pour Janvier 2019 .. dans un champ date, tu aurais simplement écrit : 2019-01-01 .. pour le mois de Mars : 2019-03-01 .. etc...)
Là encore c'est pour faciliter les requêtes lorsqu'il faut manipuler/comparer des dates.
Je te laisse apporter les corrections et revenir vers nous si tu as toujours des soucis dans tes requêtes.
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, quelle est ta question?
"ne fonctionne pas", cela ne veut rien dire: peux-tu être plus factuel?
la syntaxe de la requête est évidement incorrecte, quelle formation as-tu suivie?
peut-être devrais-tu commencer par des exercices plus simples?
je constate aussi que le texte de ta demande est incorrect. il manque les conjonctions de coordination dans la phrase " je veux afficher le salaire d'un employer (immatriculation 11) le mois de décembre 2018 le mois de janvier 2019 le mois de mars 2019"
la syntaxe de la requête est évidement incorrecte, quelle formation as-tu suivie?
peut-être devrais-tu commencer par des exercices plus simples?
je constate aussi que le texte de ta demande est incorrect. il manque les conjonctions de coordination dans la phrase " je veux afficher le salaire d'un employer (immatriculation 11) le mois de décembre 2018 le mois de janvier 2019 le mois de mars 2019"
je vois beaucoup claire après ta réponse, je viens de comprendre toutes mes erreur,
je vais mettre mois (en chiffre) et année ensemble et j’utiliserai des AND pour les conditions
Merci encore Jordan