LEFT JOIN、RIGHT JOIN 操作の使用例

次の例では、Northwind データベースの Employees テーブルに Department Name フィールドと Department ID フィールドがあると仮定しています。これらのフィールドは実際の Northwind データベースの Employees テーブルにはありませんので注意してください。

この例では、所属する社員がいない部署も含めたすべての部署を選択します。

この例では、EnumFields プロシージャを呼び出しています。EnumFields プロシージャの内容は SELECT ステートメントの例の中にあります。

Sub LeftRightJoinX()

    

    Dim dbs As Database, rst As Recordset

    

    ' この下の行を、使用しているコンピュータ上の

    ' Northwind のパスに変更してください。

    Set dbs = OpenDatabase("Northwind.mdb")

    

    ' 所属する社員がいない部署も含めた

    ' すべての部署を選択します。

    Set rst = dbs.OpenRecordset _

        ("SELECT [Department Name], " _

        & "FirstName & Chr(32) & LastName AS Name " _

        & "FROM Departments LEFT JOIN Employees " _

        & "ON Departments.[Department ID] = " _

        & "Employees.[Department ID] " _

        & "ORDER BY [Department Name];")

    

    ' Recordset を作成します。

    rst.MoveLast

    

    ' EnumFields を呼び出し、Recordset の内容を

    ' 出力します。Recordset オブジェクトと必要な

    ' フィールド幅を渡します。

    EnumFields rst, 20

    

    dbs.Close

    

End Sub