MYSQL:介于或等于

Nai*_*ion 3 php mysql sql

如果我的两个值都相同,为什么它不起作用我已经使用相同的运算符.用户需要从&选择日期,如果用户选择了相同的日期,2017-08-13那么它应该仍然显示所有日期,2017-08-13并且遗憾的是不起作用.

SELECT * FROM master_data.speed_of_service where 
( trans_time >= '2017-08-13' and 
trans_time <= '2017-08-13')
Run Code Online (Sandbox Code Playgroud)

只有在日期之间有间隔时才有效

Gor*_*off 5

如果我不得不猜测,那是因为trans_time有一个时间组件.一个简单的解决方法是提取日期:

SELECT ss.*
FROM master_data.speed_of_service ss
WHERE date(trans_time) >= '2017-08-13' and date(trans_time) <= '2017-08-13';
Run Code Online (Sandbox Code Playgroud)

更好的解决方案是在"到"日期添加一天:

SELECT ss.*
FROM master_data.speed_of_service ss
WHERE trans_time >= '2017-08-13' AND
      trans_time < '2017-08-13' + interval 1 day;
Run Code Online (Sandbox Code Playgroud)

这样更好,因为它仍然允许使用索引.