Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara mendapatkan induk umum terendah untuk 2 baris dalam tabel rekursif (SQL)

Beberapa suntingan kecil pada jawaban Quassnoi, dan berhasil:

WITH
    hier1 (id, parent) AS (
    SELECT      id, parent
    FROM        table
    WHERE       id = @user1
    UNION ALL
    SELECT      id, parent
    FROM        table l, hier1 h
    WHERE       l.id = h.parent
    ),
    hier2 (id, parent) AS (
    SELECT      id, parent
    FROM        table
    WHERE       id = @user2
    UNION ALL
    SELECT      id, parent
    FROM        table l, hier1 h
    WHERE       l.id = h.parent
    )
SELECT  TOP 1 hier1.id
FROM    hier1, hier2
WHERE   hier1.id = hier2.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. Apakah mungkin menambahkan bahasa ke sys.syslanguages ​​di SQL Server 2008?

  2. Melewati varchar yang penuh dengan nilai yang dibatasi koma ke fungsi SQL Server IN

  3. Pilih kolom dari satu tabel berdasarkan nama kolom dari tabel lain

  4. Bagaimana cara membuat tabel dalam skema SYS di SQL Server?

  5. SQL untuk mendapatkan data bulan sebelumnya