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

mysql поръчка от с union изглежда не работи

От MySQL документация :

По принцип единственият път ORDER в съюз ще бъде полезно, ако използвате LIMIT също.

Така че, ако заявката беше следната:

(SELECT * FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%only three doors%" OR `joke` LIKE "%only three doors%") ORDER BY `ups` DESC,`downs` ASC LIMIT 10)
UNION ...

Тогава ще видите първите десет записа, които ще бъдат върнати въз основа на този ред, но не е задължително да се показват в ред.

АКТУАЛИЗИРАНЕ:

Опитайте това -

(SELECT *, 1 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%only three doors%" OR `joke` LIKE "%only three doors%") )
UNION
(SELECT *, 2 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%only%" OR `joke` LIKE "%only%") )
UNION
(SELECT *, 3 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%three%" OR `joke` LIKE "%three%") )
UNION
(SELECT *, 4 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%doors%" OR `joke` LIKE "%doors%"))
 ORDER BY `ob`, `ups` DESC,`downs` ASC LIMIT 0, 30


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL срещу SQL Server срещу Oracle

  2. Не може да се осъществи връзка, защото целевата машина активно я отказа (PHP / WAMP)

  3. В MySQL възможно ли е да се върнат повече от 1024 знака от GROUP_CONCAT

  4. Миграция на Laravel – нарушение на ограничението за целостта:1452 Не може да се добави или актуализира дъщерен ред:ограничение за външен ключ не успява

  5. Проверете дали текущата дата е между две дати + заявка за избор на mysql