Probleme Requette SQL - SQL/NoSQL - Programmation
Marsh Posté le 29-10-2006 à 17:47:21
Quelle version de MySQL ? Tu n'as peut-être pas droit au sous-requête, et dans ce cas fait une jointure. 
 
edit : supporté à partir de la version 4.1 
http://dev.mysql.com/doc/refman/5.0/fr/subqueries.html
Marsh Posté le 29-10-2006 à 17:54:29
j ai la vesrsion : 4.0.15
Marsh Posté le 29-10-2006 à 17:55:30
Merci pour ton aide 
 
tu sais, meme si je fs  
$sql = 'SELECT 
             idL, nom  
           FROM 
             table2  
           WHERE  
             idL IN  
                   (SELECT 
                      idL 
                    FROM 
                     table3 
                   ); 
ça marche pas . 
 
 
et si je fs $sql = 'SELECT 
             idL, nom  
           FROM 
             table2  
           WHERE  
             idL IN  
                   (1,2,3,4); ça marche 
Marsh Posté le 29-10-2006 à 18:21:16
Ta version de mySql ne doit pas supporter les sous-requêtes. 
 
Ta première requête peut être réécrite avec une jointure 
 
 
SELECT t2.id, t2.nom 
FROM table2 t2, table3 t3 
WHERE t2.id = t3.idL 
AND t3.idA = '2';
Marsh Posté le 29-10-2006 à 18:25:30
oui ça marche 
Merci bcp, si tu es près de moi, je te serre entre mes bras , lol
Marsh Posté le 29-10-2006 à 17:30:57
Bonjour,
J'ai fait cette requette, mais ça marche pas !
SELECT id, nom,
FROM table2
WHERE id
IN (
SELECT idL
FROM table3
WHERE idA = '2' )
MySQL a répondu:
#1064 - Erreur de syntaxe près de 'SELECT idLogo FROM assoclogo WHERE idAssoc = '2' ) LIMIT 0, 30' à la ligne 5 Dans ma base DSL, j 'ai 3 tables :table1 (idA,nom)table2(idL,nom)table3(id,idA,idL).Si quelqu'un me trouve l'erreur ça sera gentil de sa part ! Merci
---------------
polytech'Grenoble