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

Làm thế nào để giữ gìn trật tự của con cái xuất hiện sau cha mẹ của chúng

Bạn thực sự có hai loại trong một cho truy vấn cuối cùng của mình. Cha mẹ có thể sắp xếp tăng dần hoặc giảm dần nhưng con cái chỉ có thể sắp xếp tăng dần.

Sau khi xem xét điều này, tôi tin rằng bạn có thể tìm được giải pháp với những thứ như thế này.

   order by case 
        when depth = 0
            then path
    /*
      secret function that always returns the
      right numbers regardless of whether or not the sort is ascending.
    */
        else XXX_function('DESC', path)
    end desc;

Tôi tin rằng logic là đúng đắn nhưng bạn phải tìm ra cách thay thế các số theo thứ tự giảm dần vì mọi thứ sẽ 'lộn ngược'. (Có thể đảo ngược vị trí của mảng)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Khối DO tương đương với Postgres <9.0 là gì

  2. Xếp hạng dựa trên chuỗi ngày

  3. DATEADD tương đương trong PostgreSQL

  4. Sử dụng Hibernate với rất nhiều chủ đề

  5. Kích hoạt kích hoạt khi cập nhật cộtA hoặc CộtB hoặc CộtC