Hoa*_*Nam 3 mysql sql sql-timestamp
我有第一个查询
select count(*)
from `order`
where marketer_id = 75 and
HandleStatus != -1 and
(Created_at BETWEEN '2017-05-01' AND '2017-05-31')
Run Code Online (Sandbox Code Playgroud)
结果是1050
我还有第二个问题:
select count(*)
from `order`
where marketer_id = 75 and
HandleStatus != -1 and
(Month(Created_at) =5 and Year(Created_at) = 2017)
Run Code Online (Sandbox Code Playgroud)
结果是1111
我认为2个查询具有相同的含义,但它返回2个不同的结果.有关"Created_at"列的信息:COLUMN_NAME Created_at,COLUMN_TYPE时间戳,IS_NULLABLE NO,COLUMN_KEY,COLUMN_DEFAULT CURRENT_TIMESTAMP
请帮忙2查询有什么区别?
如果您考虑一天内的时间,则第一个查询仅返回2017-05-31 00:00:00之前的结果.如果您在2017-05-31 00:00:00之后和2017-05-31 23:59:59之前有任何结果(也可能在毫秒之前),它们只会显示在第二个查询中.