Mysql
 sql >> база данни >  >> RDS >> Mysql

Защо UNION ALL със и без скоби се държи различно?

Това е така, защото използвате LIMIT.

Справката в MySql казва, че ако искате да използвате ORDER BY или LIMIT за отделни избрани елементи, тогава трябва да заобиколите избраните си елементи със скоби.

Пример (От справка на MySQL):

За да приложите ORDER BY или LIMIT към отделен SELECT, поставете клаузата в скобите, които затварят SELECT:

(SELECT a FROM t1 WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
UNION
(SELECT a FROM t2 WHERE a=11 AND B=2 ORDER BY a LIMIT 10);

Ресурсът може да бъде намерен тук:http://dev.mysql.com /doc/refman/5.0/en/union.html

РЕДАКТИРАНЕ: Променена референтна връзка, защото предишната беше за версия 5.5. Но отговорът не се промени.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Предупреждение:формуляр на тази страница има повече от 1000 полета PHP MySql

  2. Модел на вложен набор, брой елементи в категории

  3. Как да изтегля данни от mysql база данни и да визуализирам с D3.JS?

  4. не може да се покажат резултати от заявка в код за възпламеняване на изглед

  5. Архитектура на базата данни за милиони нови редове на ден