如果我的两个值都相同,为什么它不起作用我已经使用相同的运算符.用户需要从&中选择日期如果用户选择相同的日期来自& 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')
只有在日期之间有间隔时才有效
解决方法:
如果我不得不猜测,那是因为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';
更好的解决方案是在“到”日期添加一天:
SELECT ss.*
FROM master_data.speed_of_service ss
WHERE trans_time >= '2017-08-13' AND
trans_time < '2017-08-13' + interval 1 day;
这样更好,因为它仍然允许使用索引.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。