我想得到两个日期时间项之间的记录数。我的表中有一列名为 created_date 与 datetime data type .我想选择在 2017-01-10 以及 2017-01-30 我已经写了下面的查询,但它似乎不包含 SELECT* FROM table WHERE created_date BETWEEN '2017-01-10' AND '2017-01-30'
created_date
datetime data type
2017-01-10
2017-01-30
SELECT* FROM table WHERE created_date BETWEEN '2017-01-10' AND '2017-01-30'
unhi4e5o1#
你现在的问题和日期文字有关 2017-01-31 表示午夜的日期。要解决这个问题,请使用以下短语表达您的查询:
2017-01-31
SELECT * FROM table WHERE created_date >= '2017-01-10' AND created_date < '2017-01-31';
这就是说,任何日期或之后的一开始 2017-01-10 在比赛开始前 2017-01-31 . 这意味着包括一整天 2017-01-30 .
of1yzvn42#
试试这个
SELECT COUNT(1) FROM tableName WHERE Cast(created_date as date) Between Cast('2017-01-10' as date) AND Cast('2017-01-30' as date)
kognpnkq3#
要获取两个日期之间的记录数,可以尝试下面的查询
SELECT COUNT(*) FROM tableName WHERE date(created_date) >= '2017-01-10' AND date(created_date) <= '2017-01-30'
3条答案
按热度按时间unhi4e5o1#
你现在的问题和日期文字有关
2017-01-31
表示午夜的日期。要解决这个问题,请使用以下短语表达您的查询:这就是说,任何日期或之后的一开始
2017-01-10
在比赛开始前2017-01-31
. 这意味着包括一整天2017-01-30
.of1yzvn42#
试试这个
kognpnkq3#
要获取两个日期之间的记录数,可以尝试下面的查询