[sql] requete selection SQl
Résolu/Fermé
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
-
18 avril 2007 à 16:40
karim1506 - 13 mai 2008 à 19:05
karim1506 - 13 mai 2008 à 19:05
A voir également:
- [sql] requete selection SQl
- Requête sql pix - Forum Python
- Sql server recovery - Télécharger - Gestion de données
- Logiciel sql - Télécharger - Bases de données
- Sql replace plusieurs valeurs - Forum Programmation
- Inverser selection excel - Forum Excel
9 réponses
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
209
19 avril 2007 à 08:55
19 avril 2007 à 08:55
La il y a de l'idee mais ca ne marche pas
SELECT [Nom]
FROM Utilisateurs
WHERE NOT EXISTS (SELECT utilisateur FROM PC);
SELECT [Nom]
FROM Utilisateurs
WHERE NOT EXISTS (SELECT utilisateur FROM PC);
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
18 avril 2007 à 17:46
18 avril 2007 à 17:46
Ca dépends de comment tu as construit ta base, tu nous met la requete comme ca mais on ne connais pas les champs, leur type leur nom ni à quoi ils correspondent... donc on ne peut rien répondre malheuresement :)
Est ce que ta base gere seule les clés étrangères?
Oui -> montre nous tes tables (différents champs, etc)
Non-> montre nous tes tables (idem), et il va te falloir faire une table de transition, nommée par exemple 'Utilisateur_pc' qui permet de faire le lien entre les identifiants des tables 'utilisateur' et 'pc' de manière à pouvoir établir le lien que tu souhaite.
Une fois le lien établi, pour récupérer les utilisateurs qui ont un pc :
Pour sélectionner les utilisateurs qui n'ont pas de pc tu fais la requête SQL inverse.
Est ce que ta base gere seule les clés étrangères?
Oui -> montre nous tes tables (différents champs, etc)
Non-> montre nous tes tables (idem), et il va te falloir faire une table de transition, nommée par exemple 'Utilisateur_pc' qui permet de faire le lien entre les identifiants des tables 'utilisateur' et 'pc' de manière à pouvoir établir le lien que tu souhaite.
Une fois le lien établi, pour récupérer les utilisateurs qui ont un pc :
SELECT u.nom FROM UTILISATEUR u, UTILISATEUR_PC up, PC p WHERE u.id = up.id
Pour sélectionner les utilisateurs qui n'ont pas de pc tu fais la requête SQL inverse.
Déjà dans ton truc il te faut trois tables
table 1 utilisateur
table 2 pc
table 3 utilisateurAyantPc
Parce que sinon tu ne gères qu'un PC par utilisateur est vice versa
Dans ton cas maintenant avec l'identifiant utilisateur est sur la table PC pour retrouver les utilisateur sans PC
SELECT * FROM utilisateurs WHERE idUtilisateur NOT IN (SELECT idUtilisateur FROM pc)
table 1 utilisateur
table 2 pc
table 3 utilisateurAyantPc
Parce que sinon tu ne gères qu'un PC par utilisateur est vice versa
Dans ton cas maintenant avec l'identifiant utilisateur est sur la table PC pour retrouver les utilisateur sans PC
SELECT * FROM utilisateurs WHERE idUtilisateur NOT IN (SELECT idUtilisateur FROM pc)
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
209
19 avril 2007 à 11:01
19 avril 2007 à 11:01
'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
209
19 avril 2007 à 08:31
19 avril 2007 à 08:31
salut
c'est quoi la requete SQL inverse ?
je vais expliquer umpeu +
j'ai une table PC avec plein de champ qui ne sont pas important ici
il y a une cle primaire (ref PC) en numero automatique
et un champ utilisateur qui me propose avec une liste les utilisateur qui ce trouve dans ma table utilisateur
ce que je voudrais c'est l'inverse de cette requete
SELECT utilisateur FROM PC PC EST MA TABLE
la ca me selectionne tous les utilisateurs qui ont un PC
moi ce que je veut c'est l'inverse
c'est quoi la requete SQL inverse ?
je vais expliquer umpeu +
j'ai une table PC avec plein de champ qui ne sont pas important ici
il y a une cle primaire (ref PC) en numero automatique
et un champ utilisateur qui me propose avec une liste les utilisateur qui ce trouve dans ma table utilisateur
ce que je voudrais c'est l'inverse de cette requete
SELECT utilisateur FROM PC PC EST MA TABLE
la ca me selectionne tous les utilisateurs qui ont un PC
moi ce que je veut c'est l'inverse
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
209
19 avril 2007 à 08:34
19 avril 2007 à 08:34
En fait ce que j'aimerais c'est
d'un cote selectionner tous les utilisateurs
SELECT Nom FROM Utilisateurs UTILISATEUR EST MA TABLE
puis selectionner tous les utilisateurs qui ont un PC
SELECT utilisateur FROM PC PC EST MA TABLE
puis ensuite soustraire le resultat de la deuxieme requete a la premiere requete
Si vous savez comment faire merci de m'aider
d'un cote selectionner tous les utilisateurs
SELECT Nom FROM Utilisateurs UTILISATEUR EST MA TABLE
puis selectionner tous les utilisateurs qui ont un PC
SELECT utilisateur FROM PC PC EST MA TABLE
puis ensuite soustraire le resultat de la deuxieme requete a la premiere requete
Si vous savez comment faire merci de m'aider
fl0
Messages postés
357
Date d'inscription
lundi 5 mars 2007
Statut
Membre
Dernière intervention
10 novembre 2021
209
19 avril 2007 à 11:41
19 avril 2007 à 11:41
Merci
je sais c'est le but un PC ne peut appartenir qu'a un seul utilisateur
c' est une gestion de parc informatique pour une entreprise
Voila la requete qui marche avec mes tables
SELECT [Nom]
FROM utilisateurs
WHERE Nom NOT IN (SELECT utilisateur FROM pc);
en fait je ne veut que les noms
Merci a tous le monde de mavoir aider et surtout a hotrod qui m'a donner la solution
je sais c'est le but un PC ne peut appartenir qu'a un seul utilisateur
c' est une gestion de parc informatique pour une entreprise
Voila la requete qui marche avec mes tables
SELECT [Nom]
FROM utilisateurs
WHERE Nom NOT IN (SELECT utilisateur FROM pc);
en fait je ne veut que les noms
Merci a tous le monde de mavoir aider et surtout a hotrod qui m'a donner la solution
abdim86
Messages postés
15
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
17 mars 2010
1
13 mai 2008 à 12:09
13 mai 2008 à 12:09
Aidez moi SVP,
la question imaginer un MCD pour créer des tables: et trouver la requetes en SQL qui affiche le tableau ci-dessou.
ID---------Article-----------Quatité--------Quté précédente------------------Cumul ------------Date
-------------------------------------------------------------------------------------------------------------------------------
1 ----------A1 -------------10------------------------0 -------------------------------10----------------01/01/08
2-----------A1------------- 60----------------------10 -------------------------------70----------------03/01/08
3-----------A1--------------20----------------------70--------------------------------90----------------25/02/08
4-----------A1------------- 70----------------------90------------------------------160----------------30/03/08
5-----------A2--------------90---------------------- 0--------------------------------90-----------------03/03/08
6---------- A2--------------10----------------------90------------------------------100----------------08/03/08
7-----------A2--------------30--------------------100 -----------------------------130----------------30/04/08
8-----------A2------------- 40--------------------130------------------------------170----------------05/05/08
9-----------A3------------- 80-----------------------0--------------------------------80----------------15/05/08
......................................................................................................................
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
le plus important dans ce tableau c'est comment afficher les deux colons "quantité précédente" et "cumul"
la quantité precedente N = cumul N-1;
et le cumul doit etre pour une article et pour tous les article c-à-d une fois quand on termine l'article A1 on s'arete et en commence pour article A2:
remarque : vous pouvez imaginé n'importe table, n'importe MCD:
seulement il faut afficher le tableau en SQL .
( et pas en programation que SQL)
je suis en stage : mon encadrant m'a donné cette exercice pour tester mes competence; mais vraiment j'ai pas réussi pour la trouvé; j'espere que vous trouver la solution:
repondre a mon email : "elyse-beach86@hotmail.com"
.
la question imaginer un MCD pour créer des tables: et trouver la requetes en SQL qui affiche le tableau ci-dessou.
ID---------Article-----------Quatité--------Quté précédente------------------Cumul ------------Date
-------------------------------------------------------------------------------------------------------------------------------
1 ----------A1 -------------10------------------------0 -------------------------------10----------------01/01/08
2-----------A1------------- 60----------------------10 -------------------------------70----------------03/01/08
3-----------A1--------------20----------------------70--------------------------------90----------------25/02/08
4-----------A1------------- 70----------------------90------------------------------160----------------30/03/08
5-----------A2--------------90---------------------- 0--------------------------------90-----------------03/03/08
6---------- A2--------------10----------------------90------------------------------100----------------08/03/08
7-----------A2--------------30--------------------100 -----------------------------130----------------30/04/08
8-----------A2------------- 40--------------------130------------------------------170----------------05/05/08
9-----------A3------------- 80-----------------------0--------------------------------80----------------15/05/08
......................................................................................................................
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
le plus important dans ce tableau c'est comment afficher les deux colons "quantité précédente" et "cumul"
la quantité precedente N = cumul N-1;
et le cumul doit etre pour une article et pour tous les article c-à-d une fois quand on termine l'article A1 on s'arete et en commence pour article A2:
remarque : vous pouvez imaginé n'importe table, n'importe MCD:
seulement il faut afficher le tableau en SQL .
( et pas en programation que SQL)
je suis en stage : mon encadrant m'a donné cette exercice pour tester mes competence; mais vraiment j'ai pas réussi pour la trouvé; j'espere que vous trouver la solution:
repondre a mon email : "elyse-beach86@hotmail.com"
.
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
13 mai 2008 à 18:17
13 mai 2008 à 18:17
Bonjour,
1) Poste ton message dans une discussion à toi plutôt que de venir mettre ça dans une discussion résolue.
2) Je te déconseille de mettre ton adresse mail si tu ne veux pas te faire spammer, surtout que tu as créé un profil, donc mieux vaut demander qu'on te MP. De plus, il est toujours mieux de faire participer tout le monde sur le forum directement et ainsi permettre à d'autres d'avoir la solution en cas d'exercice similaire.
3) Par principe je ne viendrai pas t'aider puisqu'il s'agit d'une évaluation pour un stage. Sii on te résous ton exercice et que ton encadrant pense alors que tu as le niveau, il va certainement te donner un sujet de stage à la hauteur de ses espérances et non en fonction de ton réel niveau : compte rendu : tu vas encore plus en baver durant tons stage et tu ne progressera pas forcément.
Cela dit ça peut intéressé d'autres personnes qui viendront t'aider, auquel cas reporte toi au petit un :)
En tout cas bonne chance.
1) Poste ton message dans une discussion à toi plutôt que de venir mettre ça dans une discussion résolue.
2) Je te déconseille de mettre ton adresse mail si tu ne veux pas te faire spammer, surtout que tu as créé un profil, donc mieux vaut demander qu'on te MP. De plus, il est toujours mieux de faire participer tout le monde sur le forum directement et ainsi permettre à d'autres d'avoir la solution en cas d'exercice similaire.
3) Par principe je ne viendrai pas t'aider puisqu'il s'agit d'une évaluation pour un stage. Sii on te résous ton exercice et que ton encadrant pense alors que tu as le niveau, il va certainement te donner un sujet de stage à la hauteur de ses espérances et non en fonction de ton réel niveau : compte rendu : tu vas encore plus en baver durant tons stage et tu ne progressera pas forcément.
Cela dit ça peut intéressé d'autres personnes qui viendront t'aider, auquel cas reporte toi au petit un :)
En tout cas bonne chance.
abdim86
Messages postés
15
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
17 mars 2010
1
13 mai 2008 à 18:26
13 mai 2008 à 18:26
Non , ça n'a rien avoir avec mon encadrant; parceque si mon encadrant qui m'a proposé de publié ça dans le forum commentçamarche; l'important pour lui c'est de trouver la requete parceque il meme ne sait pas la solution.
ok.
ok.
karim1506
>
abdim86
Messages postés
15
Date d'inscription
jeudi 28 février 2008
Statut
Membre
Dernière intervention
17 mars 2010
13 mai 2008 à 19:05
13 mai 2008 à 19:05
bonjour
tu dois creer une table qui va porter les champs (article qtpdt.....).
ensuite il suffit d'utiliser la requete SQL:Select champ1,champ2 from table where "la condition"
tu peut aussi consulter Google .il suffit d'ecrire requete selection SQL.
bonne chance
tu dois creer une table qui va porter les champs (article qtpdt.....).
ensuite il suffit d'utiliser la requete SQL:Select champ1,champ2 from table where "la condition"
tu peut aussi consulter Google .il suffit d'ecrire requete selection SQL.
bonne chance