将日期时间与日期和时间进行比较

时间:2016-04-26 08:04:44

标签: mysql sql datetime

我目前有两张这样的表:
enter image description here
我想将我的日期时间(表2)与我的列日期和时间仅与一个条件进行比较,但这不起作用:

SELECT id
FROM Table1
WHERE Date+Time>(SELECT Datetime FROM Table2 WHERE Id=1)
AND Id=1

2 个答案:

答案 0 :(得分:2)

以下两个中的一个应该可以正常运行。

select id from table1
where concat(date,' ',time) > (select datetime from table2 where id = 1)
and id = 1;

select t1.id from table1 t1 inner join table2 t2
on t1.id = t2.id and concat(t1.date,' ',t1.time) > t2.datetime;

您可能需要将时间和日期列显式转换为char。不过我对此表示怀疑。

答案 1 :(得分:1)

SELECT Id
FROM Table1
WHERE CAST(Date as DATETIME) + CAST(Time as TIME)>= (SELECT Datetime FROM Table2 WHERE Id=1)
AND Id=1

但请注意,只要您的日期相同,就会使用“>”为您的查询。