Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > UPDATE запрос в MySQL


Автор: Sheff 2.5.2003, 22:44
Делаю UPDATE запрос вот так:
Код

UPDATE gb SET name='myname' WHERE id=1 LIMIT 1;

однако вот такой вариант не проходит:
Код

UPDATE gb SET name='myname' WHERE id=1 ORDER BY datetime LIMIT 1;

или такой:
Код

UPDATE gb SET name='myname' WHERE id=1 LIMIT 1,3;

Хотя в доке написано, что так делать можно, в чём же дело ?

Автор: Devorior 4.5.2003, 11:09
LIMIT то зачем? без него сработает

Автор: Sheff 5.5.2003, 12:22
Как зачем, чтобы выбрать определённое к-во записей.
Хотя если его убрать, но оставить ORDER BY, то всё павно не пашет.
Короче, пашет только с WHERE'ом, если дописать ещё чё нить, то уже ошибка sad.gif

Автор: Devorior 5.5.2003, 13:21
ты же не выбираешь записи, а обновляешь. Чтобы обновить MySQL'ю нужно знать id которых обновлять и все. А сортировать и укорачивать выборку надо для SELECT

Автор: Nbuth 7.11.2006, 10:12
Sheff, какая у тебя версия MySQL ? ORDER BY можно применять тока начиная с 4
Если с версией все в прядке, то вот мой, рабочий, вариант запроса:
Код

UPDATE `test_update` SET `title2` = 'xyz' WHERE `title`='aaaaa' ORDER BY `desc` LIMIT 2

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)