SQLite 每小时订单数
SQLite count of order per hour
我手头只有 SQLite,我想用 table 计算每天每小时的订单数,其中包含以下几列:
orderID, order_datetime(yyyy-mm-dd hh:mm:ss), location
SELECT
DATEPART('%H', order_datetime) as 'HOUR',
COUNT(*) as 'ORDERPERHOUR'
FROM vanorder
GROUP BY DATEPART('%H', order_datetime);
我收到错误 'no such function: DATEPART',我如何在 sqlite 的世界中实现这一点?谢谢。
在 SQLite 中,等效使用 STRFTIME()
:
SELECT STRFTIME('%H', order_datetime) as hour
COUNT(*) as ORDERPERHOUR
FROM vanorder
GROUP BY STRFTIME('%H', order_datetime);
如果你打算使用 SQLite,你应该熟悉 SQLite 函数。
您可以使用具有正确语法和格式字符串的 SQLite 的 strftime()
函数:
SELECT strftime('%Y-%m-%d %H', order_datetime) hour,
COUNT(*) ORDERPERHOUR
FROM vanorder
GROUP BY hour;
strftime('%Y-%m-%d %H', order_datetime)
对于像 '2021-07-28 15:32:12'
这样的时间戳将 return 2021-07-28 15
这就是你想要的。
如果您希望看到类似 '2021-07-28 15:00:00'
的值,则更改为:
strftime('%Y-%m-%d %H:00:00', order_datetime)
我手头只有 SQLite,我想用 table 计算每天每小时的订单数,其中包含以下几列: orderID, order_datetime(yyyy-mm-dd hh:mm:ss), location
SELECT
DATEPART('%H', order_datetime) as 'HOUR',
COUNT(*) as 'ORDERPERHOUR'
FROM vanorder
GROUP BY DATEPART('%H', order_datetime);
我收到错误 'no such function: DATEPART',我如何在 sqlite 的世界中实现这一点?谢谢。
在 SQLite 中,等效使用 STRFTIME()
:
SELECT STRFTIME('%H', order_datetime) as hour
COUNT(*) as ORDERPERHOUR
FROM vanorder
GROUP BY STRFTIME('%H', order_datetime);
如果你打算使用 SQLite,你应该熟悉 SQLite 函数。
您可以使用具有正确语法和格式字符串的 SQLite 的 strftime()
函数:
SELECT strftime('%Y-%m-%d %H', order_datetime) hour,
COUNT(*) ORDERPERHOUR
FROM vanorder
GROUP BY hour;
strftime('%Y-%m-%d %H', order_datetime)
对于像 '2021-07-28 15:32:12'
这样的时间戳将 return 2021-07-28 15
这就是你想要的。
如果您希望看到类似 '2021-07-28 15:00:00'
的值,则更改为:
strftime('%Y-%m-%d %H:00:00', order_datetime)