ALL DISTINCT DISTINCTROW TOP 谓语示例

此示例创建查询,且该查询在 CustomerID 字段结合客户和订单表。客户表并未复制一份 CustomerID 字段,但是订单表必须如此做,因为每一客户能有许多订单。使用 DISTINCTROW 来生成公司的列表,且该公司至少有一笔订单,但是不含订单的任何详细数据。

SubSub()

    Dim dbs As Database, rst As Recordset

    ' 在您的计算机中修改此行使其正确指到 Northwind 的路径。

    Set dbs = OpenDatabase("Northwind.mdb")

    ' 对运费超过 $100 的订单,

    

    ' 在CustomerID字段结合客户和订单表

    ' 选取有至少一笔订单的公司的一个列表

    '

    Set rst = dbs.OpenRecordset("SELECT DISTINCTROW " _

        & "CompanyName FROM Customers " _

        & "INNER JOIN Orders " _

        & "ON Customers.CustomerID = " _

        & "Orders.CustomerID " _

        & "ORDER BY CompanyName;")

    

    ' populateRecordset。

    rst.MoveLast

    

    ' 调用 EnumFields 来打印记录集的内容。

    '传递记录集对象和要求的字符宽度。

    '

    EnumFields rst, 25

    dbs.Close

End Sub