我有一个保存汽车预订的数据库。我正在尝试编写一个查询,它将为我提供足够的信息来填充具有以下属性的视图:
预订表格如下:
ResID, PickUpDateTime, ReturnDateTime, LocationName, VehicleSno
我现在已经尝试了两个小时来解决它,但我很难过。我有COUNT(*)语句来获取每个位置的小时数,但它有点关闭,因为它不受它应该属于的月份的限制。 :/我真的很讨厌约会。
SELECT
MONTH(PickupDateTime) AS Month,
LocationName as Location,
COUNT(*) AS NoOfRes,
TIMESTAMPDIFF(HOUR, PickUpDateTime, ReturnDatetime) AS Hours
FROM
Reservation
GROUP BY
Location
ORDER BY
NoOfRes DESC
答案 0 :(得分:0)
要获取日期月份,您可以使用MONTH()
功能。
因此,要获得2月份预订最多的位置,
select LocationName, count(*) num_reservations
from reservation
where month(PickUpDateTime) = 2 --This can be parameterized if needed
group by LocationName
order by num_reservations desc