Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy xuất thứ bậc cha-con từ bảng mysql tự tham chiếu

MySQL không hỗ trợ truy vấn đệ quy, vì vậy nếu một đứa trẻ có thể có những đứa trẻ thì không có cách nào để tạo ra một truy vấn như vậy. Nếu không, truy vấn này sẽ trả về các hàng theo thứ tự bạn cần:

SELECT * FROM tablename
ORDER BY
  CASE WHEN parent_id=0 THEN id ELSE parent_id END,
  id

Vui lòng xem fiddle tại đây . Mẹo là sắp xếp các hàng theo id nếu đó là cha mẹ hoặc bởi parent_id nếu đó là trẻ em và sau đó là id .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách khôi phục mật khẩu root mysql trong MacOS

  2. Tại sao điều kiện IN lại chậm hơn =trong sql?

  3. Cách tốt nhất để thông báo lỗi bắt LOAD DATA LOCAL INFILE?

  4. Làm thế nào để GROUP BY trong MySQL đúng cách?

  5. Cách quản lý các đặc quyền với các vai trò trong MySQL