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

Избор на записи по реда на родителския идентификатор

Ако тези без родители имаха null в техния parent колона, вашето изявление би било много просто:

SELECT id, name, parent FROM categories order by coalesce(parent, id), id;

Ако настоявате за 0 като не представлява родител, можете да използвате по-подробно CASE WHEN ... THEN ... изявление.

Редактиране:

-- Sorting by name instead
select a.id, a.name, a.parent 
from categories a left join categories b on a.parent=b.id 
order by coalesce(b.name, a.name), a.name


  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 Multiple Where

  2. Използване на Python и MySQL в ETL процеса:SQLAlchemy

  3. mysql заявка за дата, между две полета за дата

  4. MySQL тригер преди Проверка на вмъкване на стойност

  5. Какво означава Таблица не поддържа оптимизиране, вместо това да правиш повторно създаване + анализ?