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

SQL вложен ред по?

Нещо подобно може да работи:

SELECT *
FROM categories
ORDER BY IF(parent_id, parent_id, category_id), parent_id, display_order

но тъй като не може да използва индекс, ще бъде бавно. (Не тествах обаче, може да не е наред)

Първият ORDER BY състояние сортира родителите и децата заедно; тогава вторият гарантира, че родителят изпреварва своите деца; третият сортира децата помежду си.

Освен това очевидно ще работи само в случая, който директно описахте, когато имате йерархия на две нива.



  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

  2. GROUP BY с MAX дата

  3. Вземете типа на променливата в MySQL

  4. Задаване СЕГА() като стойност по подразбиране за тип данни за дата и час?

  5. PHP MySQL ЗАРЕЖДАНЕ НА ДАННИ INFILE Помощ