PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

postgres - dengan rekursif

Pertama-tama, (2, 'grandparent', null) harus (3, 'grandparent', null) jika itu benar-benar kakek-nenek. Kedua, kondisi gabungan (implisit) Anda di bagian rekursif dari kueri Anda mundur, Anda ingin mengeluarkan induk dari rt.levelparent daripada t.parent_level :

WITH RECURSIVE recursetree(level_id, levelparent) AS (
    SELECT level_id, parent_level 
    FROM level 
    WHERE level_id = 197

    UNION ALL

    SELECT t.level_id, t.parent_level
    FROM level t JOIN recursetree rt ON rt.levelparent = t.level_id
    -- join condition fixed and ANSI-ified above
)
SELECT * FROM recursetree;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL:Waktu pembuatan tabel

  2. Postgres Periksa apakah IP (inet) DALAM daftar Rentang IP

  3. Java - tanggal disimpan sebagai hari sebelumnya

  4. Membangun Database yang Sangat Tersedia untuk Moodle Menggunakan PostgreSQL

  5. PHP PDO Postgres versus jenis kolom Sqlite untuk count(*)