SQL:如何在忽略时间的情况下比较日期?

标签 sql

如何在忽略时间的情况下只比较时间戳的日期?

我只想比较月/日/年。例如:

select * from Batch
where openingtime <> closingtime

问题是这会显示太多批处理,因为它将包括 OpeningTimeClosingTime 仅在一天中的时间不同的批处理:


OpeningTime = 2010-07-07 11:19:29.000


ClosingTime = 2010-07-07 19:19:22.000

最佳答案

将两个时间戳都转换为日期

对于 SQL Server

Select * 
from Batch 
where cast(openingtime as date) <> cast(closingtime as date)

甲骨文

Select * 
from Batch 
where trunc(openingtime) <> trunc(closingtime)

关于SQL:如何在忽略时间的情况下比较日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31394550/

相关文章:

sql - 左加入建议

php - laravel 查询有一个额外的下划线符号

sql - 查找特定组中的最低值

sql - 如何从特定列重复的 postgreSQL 表中删除行?

sql - 如何在 SQL Server 2005 中创建禁用的触发器?

mysql - JOIN语句的SQL问题(1个表的多个结果)

mysql - 在 SQL 中导出帖子名称,然后重新使用它们 [Wordpress/Woocommerce/SQL]

SQL - 按日期范围对行中具有连续值的行进行分组

mysql - SQL 语法不正确附近

mysql - 将查询转换为左连接 (?) 以包含不匹配的用户 ID