MS SQL加入dateTime

时间:2009-09-25 07:41:50

标签: sql sql-server datetime

我有一个连接两个表的查询。 连接在几个列上完成,包括dateTime列。 我目前的问题是一个dateTime列存储毫秒而另一个表是从一个不包含毫秒的文件填充的 因此,连接将永远不会返回结果。

有没有办法让SQl忽略毫秒?

2 个答案:

答案 0 :(得分:1)

如果aTable.date包含毫秒且bTable.date不包含,则比较它们:

... WHERE convert(varchar, aTable.date, 120) = bTable.date

使用arg2 = 120将datetime转换为varchar会生成以下格式:ODBC canonical yyyy-mm-dd hh:mi:ss

答案 1 :(得分:0)

这仍然有功能,但避免字符串和转换

WHERE
    aTable.date >= bTable.date
    AND
    aTable.date < DATEADD(second, 1, bTable.date)