Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1090 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requete simple... a premiere vue...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Requete simple... a premiere vue...

n°1321879
imnotgood
Posté le 09-03-2006 à 15:01:22  profilanswer
 

Bonjour a tous,
 
Tout d'abord veuillez m'excuser pour l'omission des accents mais j'ai un clavier qwerty...
 
Alors voila ca fait une bonne heure que je me casse la tete sur une requete SQL mais je ne trouve pas la bonne.
J'ai 3 tables :
 

Code :
  1. +------------+
  2. |   FILE     |
  3. +------------+
  4. | 1 Fichier1 |
  5. | 2 Fichier2 |
  6. | 3 Fichier3 |
  7. | 4 fichier4 |
  8. +------------+
  9. +------------+
  10. |   USER     |
  11. +------------+
  12. | 1 User1    |
  13. | 2 User2    |
  14. +------------+
  15. +-----+
  16. | REL |
  17. +-----+
  18. | 1 1 |
  19. | 1 2 |
  20. | 2 1 |
  21. | 2 2 |
  22. | 3 1 |
  23. | 4 2 |
  24. +-----+


 
Table REL = relation entre fichier et user. REL.Col1=id du fichier et REL.Col2=id du user
 
Comment faire pour selectionner tous les id des fichiers pour lesquels il n'y a qu'un seul utilisateur pour lequel il y a une relation ?
Dans cet exemple, avoir 3 et 4 dans le recordset ?
 
Le faire pour un seul fichier j'y arrive :
(enfin pour tester pour un seul fichier je m'y prendrais pas comme ca, mais je pars de cet exemple de requete pour essayer de trouver la bonne pour tester pour tous les fichiers en meme temps)

Code :
  1. SELECT idfile
  2. FROM rel_file_user
  3. WHERE
  4.   (
  5.     SELECT count(idfile)
  6.     FROM rel_file_user
  7.     WHERE idfile=4
  8.   )=1
  9.   AND idfile=4


Donc la on teste pour le fichier 4. Si il n'y a qu'une seule relation on retourne l'id du fichier (4 dans ce cas)
 
D'avance merci pour votre aide...

mood
Publicité
Posté le 09-03-2006 à 15:01:22  profilanswer
 

n°1321925
bpoujol
Posté le 09-03-2006 à 15:36:31  profilanswer
 

select IDFILE , COUNT(*) from REL
group by IDFILE
having COUNT(*) = 1
 
Ca marcherai pas comme ca ?
Au pire tu cache l'affichage de COUNT(*) en SQLPlus


Message édité par bpoujol le 09-03-2006 à 15:36:48

---------------
How can I save my little boy from Oppenheimer's deadly toy ? There is no monopoly of common sense on either side of the political fence
n°1321937
imnotgood
Posté le 09-03-2006 à 15:49:18  profilanswer
 

Un grand merciiiiiiiiiii :d:d:d
 
Ca fonctionne nickel :D
 
Merci bcp... Je n'avais jamais utilise "having"...

n°1321943
bpoujol
Posté le 09-03-2006 à 15:52:13  profilanswer
 

HAVING est l'equivalent du WHERE dans les requetes d'aggrégation (je crois que c'est le mot exact) cad contenant COUNT MIN MAX SUM MOY etc...
 
Enchanté de t'avori aidé.
Bonne continuation


---------------
How can I save my little boy from Oppenheimer's deadly toy ? There is no monopoly of common sense on either side of the political fence

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Requete simple... a premiere vue...

 

Sujets relatifs
pb de requete sur une table vide et une rempli[MySQL] Requete SQL pour supprimer des enregistrements identiques
[XQuery]Problème de requêterequete récursive sql
Un simple lien qui ne fonctionne pas toujours[ MySQL ] Requête imbriquée ???
[général] choix d'un langage pour un traitement de texte simpleRequête à plusieurs ordres
creer requete pour inserer des valeurs dans ACCESS[resolu] problème requete erreur de syntaxe du a des quotes...
Plus de sujets relatifs à : Requete simple... a premiere vue...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR