【问题标题】:Count Function in Access SQL QueryAccess SQL 查询中的计数函数
【发布时间】:2013-11-12 19:11:43
【问题描述】:

列出客人的姓名以及每位客人在我们其中一家酒店预订房间的次数。按从最常来客到最不常来客的顺序排列列表。

我不断获取 Firstname 和 LastName 的聚合函数

到目前为止我有这个代码

SELECT FirstName, LastName, Count(ResNum) AS TotalReservations
FROM RESERVATION, GUEST
Where GUEST.GuestNo = RESERVATION.GuestNo
ORDER BY RESERVATION.GuestNo

这里是关系表的链接

View Relationship Table

【问题讨论】:

  • 您缺少group by 子句。并且 Access 的底层 SQL 引擎将要求将任何未聚合的字段列在 group by 中。

标签: mysql ms-access


【解决方案1】:

试试这个:

SELECT FirstName, LastName, Count(ResNum) AS TotalReservations
FROM RESERVATION
INNER JOIN GUEST ON GUEST.GuestNo = RESERVATION.GuestNo
GROUP BY FirstName, LastName
ORDER BY COUNT(ResNum) DESC

【讨论】:

    【解决方案2】:
    SELECT g.FirstName, g.LastName, Count(r.ResNum) AS TotalReservations
    FROM RESERVATION AS r
    INNER JOIN GUEST AS g ON g.GuestNo = r.GuestNo
    GROUP BY g.FirstName, g.LastName
    ORDER BY Count(r.ResNum) DESC
    

    【讨论】:

      猜你喜欢
      • 2017-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多