Что не так с этим запросом? - PullRequest
0 голосов
/ 29 октября 2009

с использованием MySQL версии 4.0.27:

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

Сообщение об ошибке: # 1064 - в вашем синтаксисе SQL есть ошибка. Обратитесь к руководству, соответствующему вашей версии сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с 'SELECT t ОТ b ГДЕ col_x =' 1234

Я пытался LIKE '%123456%'

Ответы [ 3 ]

3 голосов
/ 29 октября 2009

Извините, что разочаровал вас, но подзапросы не поддерживаются в вашей версии, если MySQL.

Подзапросы были введены в версии 4.1 в соответствии с MySQL Dev Zone

1 голос
/ 29 октября 2009

Вы не можете выбирать и обновлять одну и ту же таблицу в запросе.

ссылка: документация по обновлению mysql

0 голосов
/ 29 октября 2009

Проверить эту страницу . Очевидно, вам нужно установить режим SQL на «ANSI QUOTES»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...