如何使用sqlite找到最繁忙的月份

时间:2011-11-05 06:03:14

标签: sql sqlite datetime

我正在尝试使用CheckIn属性找到最繁忙的月份(哪个月拥有最多的客人)。 这是我的表:

Reservation
  • ReservationNumber(主键)数据类型:整数
  • CheckIN数据类型:DateTime示例:2011-10-31
  • CheckOut数据类型:DateTime示例:2011-10-31
  • GuestID数据类型:整数
  • RoomNumber数据类型:整数

据我所知,我必须使用GROUP BY,但我不知道如何按月分开登记日期。我试过MONTH(),但sql说没有这样的功能。请帮忙。

提前致谢:)

3 个答案:

答案 0 :(得分:1)

我应该试试这个:

SELECT strftime('%m', CheckIN) AS month, COUNT(GuestID) AS tot
FROM reservation
GROUP BY month
ORDER by tot DESC

答案 1 :(得分:0)

SQLite没有Date类型(http://www.sqlite.org/datatype3.html)。所以我猜它是存储是一个blob,它将是一个存储为纪元号的整数,你可以使用http://www.epochconverter.com/将你想要的月份转换为纪元,然后搜索月份开始之间的范围和月初。

答案 2 :(得分:0)

SELECT count(ReservationNumber)FROM Reservation GROUP BY strftime('%m',CheckIN)ORDER BY count(ReservationNumber)DESC