2009-10-29 6 views
0

en utilisant la version MySQL 4.0.27:Quel est le problème avec cette requête?

UPDATE `t` SET `col_x` = 
(SELECT `col_x` FROM `t` WHERE `col_y`='123456') WHERE `col_y`= '456789' 

message d'erreur: # 1064 - Vous avez une erreur dans votre syntaxe SQL. Consultez le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de « SELECT t DE b OU col_x = » 1234

J'ai essayé LIKE '%123456%'

+0

quel est le message d'erreur complet? – GSto

Répondre

3

Je suis désolé de vous décevoir, mais les sous-requêtes ne sont pas pris en charge dans votre version si MySQL.

Subqueries ont été introduites au v 4.1 selon MySQL Dev Zone

+0

J'ai eu cette idée, mais j'ai trouvé la documentation de la sous-requête dans MySQL 3.23/4.0/4.1 Manual, donc j'ai pensé que ma version lui appartenait aussi :( merci – perfectDay

-1

Check out this page. Apparemment, vous devez définir votre mode SQL sur 'ANSI QUOTES'

+0

non, la citation est très bien – longneck

Questions connexes