0
在比较日期时,我一直有一些“奇怪”的结果。
table1
有两行带有时间戳值2009-08-26 23:39:56
和2009-08-27 00:01:42
当我做这个查询:在mysql中日期比较(到时间戳列)的结果不正确
select * from table1 c
INNER JOIN table2 r ON r.table1_id = c.id
WHERE DATE(c.authorization_date) = '2009-08-26'
返回两行(当它仅应返回一个)。
为了增加怪事在返回的结果集行具有塔相同的值:2009-08-26 23:39:56
但是如果我让这个查询:
SELECT DATE(authorization_date) FROM table1
它正确返回两列值2009-08-26
和2009-08-27
所以,我的问题来了。我如何进行比较,以便返回正确的结果,我做错了什么?可能与内部连接有关?
对不起,我把我认为是足够的信息,但我不能更多的错误...这个设置没有问题,但我的原始设置。 我粘贴我的原始设置,希望你或任何人都可以告诉我我错在哪里。 – Cesar 2009-08-28 05:46:05
@ndp:对我感到羞耻!!!问题是,table2有一个主要复合键 (我讨厌主复合键),所以内连接得到两行。 对不起,让你浪费你的时间,非常感谢! – Cesar 2009-08-28 07:04:08
塞萨尔,很高兴帮助,它解决了。 – ndp 2009-08-28 15:38:14