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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [RÉSOLU]Utilisier les 'in' dans une requéte sql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RÉSOLU]Utilisier les 'in' dans une requéte sql

n°1351336
hardrog
Play it fucking loud !!
Posté le 21-04-2006 à 15:46:46  profilanswer
 

bonjour,voila j'ai la requéte suivante:
 

Code :
  1. SELECT sujetmess, contenumess, datemess, idclient
  2. FROM message
  3. WHERE destmess
  4. IN (
  5. SELECT id
  6. FROM  CLIENT  WHERE ident =2)
  7. OR idclient
  8. IN (
  9. SELECT id
  10. FROM  CLIENT  WHERE ident =2)
  11. ORDER  BY datemess DESC


 
Elle me semble correcte mais pourtant :
 
 
 
 
    MySQL a répondu:[url=http://dev.mysql.com/doc/mysql/en/Error-returns.html][/url]
 
 
#1064 - You have an error in your SQL syntax.  Check the manual that
corresponds to your MySQL server version for the right syntax to use
near 'select id from client where ident=2) or idclient in (select id [/cpp]Je sais pas,c'est peut être ma syntaxe......
J'aurais besoin de vos lumiéres... :jap:


Message édité par hardrog le 21-04-2006 à 16:09:01
mood
Publicité
Posté le 21-04-2006 à 15:46:46  profilanswer
 

n°1351341
Arjuna
Aircraft Ident.: F-MBSD
Posté le 21-04-2006 à 15:50:37  profilanswer
 

passe en 4.1 si t'es encore en <= 4.0

n°1351343
Beegee
Posté le 21-04-2006 à 15:51:58  profilanswer
 

Si ta version de mySql est ancienne, elle ne supporte pas les requêtes imbriquées ...
 
Essaye ça pour voir :
 

Code :
  1. SELECT m.sujetmess, m.contenumess, m.datemess, m.idclient
  2. FROM message m
  3. LEFT JOIN client c1 ON c1.id = m.destmess
  4. LEFT JOIN client C2 ON c2.id = m.idclient
  5. WHERE c1.ident = 2
  6. AND c2.ident = 2
  7. AND (c1.id IS NOT NULL OR c2.id IS NOT NULL);


Message édité par Beegee le 21-04-2006 à 15:52:18
n°1351347
hardrog
Play it fucking loud !!
Posté le 21-04-2006 à 15:57:58  profilanswer
 

Cela ne fait plus d'erreur mais cela ne donne pas de résultat.
Je vais vérifier ma BD.
Sinon on peut remplacer le fonctionnement du 'in' pas des jointures?

n°1351352
Arjuna
Aircraft Ident.: F-MBSD
Posté le 21-04-2006 à 16:05:02  profilanswer
 

c'est vrai qu'en lisant ta requête...
 

Code :
  1. SELECT m.sujetmess, m.contenumess, m.datemess, m.idclient
  2. FROM message m, client c
  3. WHERE c.entid = 2
  4. and
  5. (
  6.    m.destmess = c.id
  7. or m.idclient = c.id
  8. )
  9. ORDER  BY m.datemess DESC

n°1351355
hardrog
Play it fucking loud !!
Posté le 21-04-2006 à 16:08:38  profilanswer
 

merci a vous deux!!! :jap:  
c'est vrai qu'en voyant ta solution Arjuna ça parait tout simple......
Merci en tout cas

n°1351358
Beegee
Posté le 21-04-2006 à 16:10:56  profilanswer
 

Arjuna a écrit :

c'est vrai qu'en lisant ta requête...
 

Code :
  1. SELECT m.sujetmess, m.contenumess, m.datemess, m.idclient
  2. FROM message m, client c
  3. WHERE c.entid = 2
  4. and
  5. (
  6.    m.destmess = c.id
  7. or m.idclient = c.id
  8. )
  9. ORDER  BY m.datemess DESC



 
je suis fatigué dis donc, faire 2 jointures externes au lieu d'une jointure interne ...  :sleep:

n°1351364
hardrog
Play it fucking loud !!
Posté le 21-04-2006 à 16:19:20  profilanswer
 

Citation :

je suis fatigué dis donc, faire 2 jointures externes au lieu d'une jointure interne ...  


Dis toi que moi ça faisiat une heure que j'y étais alors tu vois..............

n°1351367
Arjuna
Aircraft Ident.: F-MBSD
Posté le 21-04-2006 à 16:21:43  profilanswer
 

Beegee a écrit :

je suis fatigué dis donc, faire 2 jointures externes au lieu d'une jointure interne ...  :sleep:


vivement le we :sleep:
 
chuis crevaid depuis le début de la semaine (enfin... de l'année), pis cette nuit j'étais plongé sur un projet sur lequel je dois avancer pour le boulot, mais sur lequel je ne peux pas plancher la journée (pour un autre client que chez qui je suis), et du coup j'ai dû dormir 2 heures en tout et pour tout :sleep:
 
et dire que j'enchaîne sur un pot ce soir :cry:
 
en plus, là je suis en train de faire un stack overflow :o
 
1 site intranet, deux applis windows, l'intégration au us de leur SI qui merde, le déploiement de leur nouveau logiciel de caisse, plus la TMA sur un ERP chez un seul client...
sauf que maintenant je dois m'occuper de la préparation de la migration de leur ERP, faire des tableaux de comparaison entre nux et win.
pis cet aprèm, on m'a demandé de commenter des applis décisionnelles
genre je sais plus où donner de la tête
 
et mon patron là dessus qui me dit "tiens, tu peux nous faire une appli GPS sur pocketpc pour que les livreurs puisse savoir ce qu'ils ont à livrer et où, et la centrale leur position en temps réel ?"
 
si j'aurai sû, j'aurai pas demandé d'augmentation tiens :sweat:


Message édité par Arjuna le 21-04-2006 à 16:26:54
n°1351368
Arjuna
Aircraft Ident.: F-MBSD
Posté le 21-04-2006 à 16:22:19  profilanswer
 

hardrog a écrit :

Citation :

je suis fatigué dis donc, faire 2 jointures externes au lieu d'une jointure interne ...  


Dis toi que moi ça faisiat une heure que j'y étais alors tu vois..............


ça fait toujours ça au début (et quand on est crevé ;))


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

  [RÉSOLU]Utilisier les 'in' dans une requéte sql

 

Sujets relatifs
[résolu] Probleme de popup sur mon site[Résolu] probleme de syntaxe *&
requete sql pour une sous chainePb de caractère spéciaux \ [RESOLU]
[résolu] difference tableau multi dimension[Resolu] Encapsulation C -> c++ ?
[Résolu] Compteur avec cookie et Mysql[Résolu] Centrer menu javascript
[Résolu] PB affection de texte dans un boutonPHP/MySQL: requete de tri et LEFT JOIN
Plus de sujets relatifs à : [RÉSOLU]Utilisier les 'in' dans une requéte sql


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