Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 使用 SQL » SQL 数据类型 » 日期和时间数据类型

 

比较日期和时间

缺省情况下,存储为 DATE 类型的值没有任何小时或分钟值,因此比较日期非常简单。

DATE 数据类型也可以包含时间,这会使日期的比较变得复杂。如果在将日期输入数据库时没有指定时间,缺省时间将是 0:00 或 12:00am(午夜)。带有此选项设置的任何日期比较都会比较时间和日期。数据库日期值 1999-05-23 10:00 与常量 1999-05-23 并不相等。可以使用 DATEFORMAT 函数或某个其它日期函数来比较日期和时间字段的各个部分。例如,

DATEFORMAT(invoice_date,'yyyy/mm/dd') = '1999/05/23';

如果数据库列只需要日期,客户端应用程序应确保在将数据输入到数据库中时不指定时间。这样,只包含日期字符串的比较才会按预期方式进行。

如果要将某个日期作为字符串 与某个字符串进行比较,则必须在比较之前使用 DATEFORMAT 函数或 CAST 函数将日期转换为字符串。