Ошибка при использовании оператора UNION как исправить..?

Статус
В этой теме нельзя размещать новые ответы.

Guest111

Guest
Ошибка при использовании оператора UNION как исправить..?

В общем имеется некоторый SQL запрос, в котором ошибка:
PHP:
... WHERE field>1 ORDER BY m.name asc LIMIT 0,30 UNION SELECT * FROM table LIMIT 0,30
Ошибка сообщает следующее:
mySQL error: Incorrect usage of UNION and ORDER BY
Подскажите, как это можно исправить?
(с условием, что ORDER BY двинуть вперед нельзя), т.е. к этому запросу:
PHP:
... WHERE field>1 ORDER BY m.name asc LIMIT 0,30
мне необходимо "пришить" ещё один...

Можно ли как-либо выполнить совместо с этим запросом хотя бы "show tables"?
 

Апельсин

Оранжевое создание
Подскажите, как это можно исправить?
Открыть документацию и почитать как используется ORDER BY в UNION для единичного SELECT.
http://dev.mysql.com/doc/mysql/en/union.html

Можно ли как-либо выполнить совместо с этим запросом хотя бы "show tables"?
Причем здесь SHOW TABLES?
 

chira

Новичок
нужно использовать скобки
Код:
(SELECT ... WHERE field>1 ORDER BY m.name asc LIMIT 0,30)
UNION 
(SELECT * FROM table LIMIT 0,30)
 

Guest111

Guest
а разве это сработает? повторяясь скажу, что с первым запросом я ничего делать не могу, мне подвластна на изменение только вторая часть этого запроса. Вот я и хочу пристыковать к предыдущему, свой новый, но предыдущий я не могу как-либо изменять
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху