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

Định nghĩa dạng xem SQL Server kỳ lạ

SELECT ...
FROM   dbo.viewFirst vf
       INNER JOIN dbo.Table1 t1
         ON vf.MVOID = t1.MVOID
            AND vf.ValidFrom = t1.ValidFrom
       LEFT OUTER JOIN dbo.Table2 t2
                       RIGHT OUTER JOIN dbo.Table3 t3
                         ON t2.OID = t3.FKOID
                       LEFT OUTER JOIN dbo.Table4 t4
                         ON t3.ZVOID = t4.OID
                       LEFT OUTER JOIN dbo.Table5 t5
                                       INNER JOIN dbo.Table4 t6
                                         ON t5.OID = t6.BCOID
                         ON t4.ZVOID = t5.OID
         ON t2.AddressOID = t4.OID  

Cú pháp này được trình bày trong chương 7 của Truy vấn T-SQL Inside SQL Server 2008 hoặc xem bài viết này của Itzik Ben Gan và thư theo dõi bởi Lubor Kollar

ON mệnh đề cho t2.AddressOID = t4.OID ví dụ cuối cùng có nghĩa là JOIN trong tổng số t2 về mặt logic xảy ra cuối cùng. tức là các liên kết khác về mặt logic được xử lý trước rồi đến LEFT JOIN xảy ra đối với kết quả của những lần Tham gia đó.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy xuất> 901 hàng từ máy chủ được liên kết SQL Server 2008 với Active Directory

  2. Không thể thực hiện câu lệnh COMPUTE

  3. Cách thay đổi cột mà không bỏ bảng trong SQL 2008

  4. Áp dụng chéo ở Linq

  5. Quá nhiều Left Joins có phải là một mã có mùi không?