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

hàm xlookup trong SQL

Truy vấn của bạn về cơ bản là đúng. Vấn đề duy nhất là bạn có thể muốn tất cả các hàng từ c1 với cột bổ sung từ c2 . Đối với điều đó, c1 bảng phải là bảng đầu tiên trong 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

Tôi cũng đã xóa dấu phẩy còn sót lại trước FROM mệnh đề.

Tất nhiên, nếu tất cả SID s trong c1 được điền với các giá trị chính xác, thì bạn không cần một phép nối bên ngoài nào cả. Trong trường hợp đó, thứ tự của c1 / c2 trong FROM mệnh đề không quan trọng.

CHỈNH SỬA:

Nếu bạn muốn tên được liên kết với researchId , bạn sẽ sử dụng một JOIN khác :

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. Ánh xạ trường điểm hình học PostGIS với Hibernate trên Spring Boot

  2. Làm thế nào để sao chép cấu trúc của bảng này sang bảng khác với các ràng buộc khóa ngoại trong psql?

  3. Mật khẩu mặc định cho postgreSQL được cài đặt bởi phiên bản Gitlab Omibus là gì?

  4. chọn một cột dựa trên giá trị tối thiểu của một cột khác

  5. Điều kiện đếm ở đâu PostgreSQL