sql >> データベース >  >> RDS >> Sqlserver

奇妙な SQL Server ビューの定義

    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  
    

    この構文については、Inside SQL Server 2008 T-SQL Querying の第 7 章で説明されているか、この記事 Itzik Ben Gan と フォローアップ レター Lubor Kollar著

    ON を持つ t2.AddressOID = t4.OID の節 たとえば最後は、JOIN t2 の 論理的に最後に発生します。つまり、他の結合は論理的に 最初に処理され、次に LEFT JOIN が処理されます それらの結合の結果に対して発生します。




    1. mysql-選択クエリの行をロックしますか?

    2. MySQL:ストアドプロシージャのパラメータ名がテーブルの列名と同じ場合

    3. ジャンクションテーブルを使用したデータ挿入

    4. PDOプリペアドステートメントの正確な文字列MATCHを強制します