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

fungsi xlookup dalam SQL

Permintaan Anda pada dasarnya benar. Satu-satunya masalah adalah Anda mungkin menginginkan semua baris dari c1 dengan kolom tambahan dari c2 . Untuk itu, c1 tabel harus menjadi tabel pertama di LEFT JOIN :

SELECT c1.SID, c1.FID, c1.companyname, 
       C1.parentID, c1.parentname, c1.companytype,
       c1.companystatus, c2.researchID
FROM c1 LEFT JOIN
     c2 
     ON c2.SID = c1.SID

Saya juga menghapus tanda koma sebelum FROM klausa.

Tentu saja, jika semua SID s di c1 diisi dengan nilai yang benar, maka Anda tidak memerlukan gabungan luar sama sekali. Dalam hal ini, urutan c1 /c2 di FROM klausa tidak masalah.

EDIT:

Jika Anda ingin nama yang terkait dengan researchId , Anda akan menggunakan JOIN another yang lain :

SELECT c1.SID, c1.FID, c1.companyname, 
       C1.parentID, c1.parentname, c1.companytype,
       c1.companystatus, c2.researchID,
       c2r.companyName
FROM c1 LEFT JOIN
     c2 
     ON c2.SID = c1.SID LEFT JOIN
     c2 c2r
     ON c2r.SID = c2.ResarchID



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JDBC menyisipkan array nyata

  2. jendela geser sql - menemukan nilai maksimal selama interval

  3. Cara mengatur zona waktu untuk Postgres 9.4 secara permanen

  4. postgresql:tipe data untuk intisari pesan md5?

  5. Kendala unik Postgres tidak menegakkan keunikan