我有一个带有order表的sql数据库,主键为order_no(int)和order_dispatch_date(timestamp)。 我有46行,其日期(order_dispatch_date)为'2017-12-09',但当我执行以下查询时,它只显示45行:
select * from orders where date(order_dispatch_date)=('2017-12-09')
所以我进一步调查并发现order_no 1029547没有显示在结果中,那就是我的问题所在。 我也执行了这个查询,它给了我相同的结果,45行除了order_no 1029547
的行 SELECT * FROM `orders` WHERE date(order_dispatch_date)=(SELECT date(order_dispatch_date) from orders WHERE order_no=1029547)
为什么带有order_no 1029547的行不会显示在结果中,而是显示在此查询中:
SELECT * FROM `orders` WHERE date(order_dispatch_date)=date('2017-12-09') and order_no=1029547
请帮我弄清楚问题。
答案 0 :(得分:0)
我从order_no 1029547的order_dispatch_date中的45行中显示的订单中复制了时间戳,当我从订单执行select *时,我仍然获得45行(order_dispatch_date)='2017-12-09 “