erreur syntaxe requete

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : erreur syntaxe requete

par donatello » 08 déc. 2005, 11:37

tout à fait, cher Maître.

par Cyrano » 07 déc. 2005, 22:24

Un petit [Résolu] serait-il approprié :?:

par donatello » 07 déc. 2005, 20:11

ça marche beaucoup mieux après vos remarques. merci!

par albat » 07 déc. 2005, 15:19

Dernier point.
Puisque tu as eu la bonne idée de donner des alias (P et S) à tes tables,
n'oublie pas de les utiliser pour préfixer tous tes champs.
Notamment dans la clause WHERE.

Code : Tout sélectionner

WHERE P.products_id=22 AND P.products_status = 1

par albat » 07 déc. 2005, 15:17

De plus, ta requête contient 2 clauses WHERE. :evil:

Enfin, si ton champ products_status est de type numérique, n'utilise pas d'apostrophes autour de la valeur 1
et s'il ne l'est pas, c'est sans doute une erreur de modélisation... ;)

Code : Tout sélectionner

SELECT P.products_id, P.products_image, P.products_tax_class_id, if(S.status, S.specials_new_products_price, P.products_price) AS products_price FROM products P LEFT JOIN specials S on P.products_id = S.products_id WHERE products_id=22 AND products_status = 1 ORDER BY P.products_date_added DESC LIMIT 3

par albat » 07 déc. 2005, 15:14

La précision d'une jointure (JOIN) se fait dans la clause FROM et non dans la clause WHERE.

par donatello » 07 déc. 2005, 13:28

1064 - Erreur de syntaxe près de 'p left join specials s on p.products_id = s.products_id where pr' à la ligne 1

par zeus » 07 déc. 2005, 13:27

Quelle est cette erreur ?

sinon, dans l'ordre, je vois, SELECT FROM WHERE LEFT JOIN WHERE ORDER BY alors qu'il faut SELECT FROM LEFT JOIN WHERE ORDER BY
Tu doit grouper tes conditions WHERE après la jointure
de plus, à quoi correspond le if dans le select ? :shock:

erreur syntaxe requete

par donatello » 07 déc. 2005, 13:26

Bonjour,
j'essaye d'executer la requete suivante mais j'ai une erreur de syntaxe:
select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from products where products_id=22 p left join specials s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit 3
L'erreur semble se trouver à ce niveau:
where products_id=22 p left join 
Quelqu'un voit-il ce qui ne va pas?