【发布时间】:2017-11-08 11:12:42
【问题描述】:
比较日期/日期时间值的部分时,哪种方法最有效?比较日期时间月份的示例:
where insdate =DATEADD(month, DATEDIFF(month, 0, @insdate), 0)
或
where year(insdate)=year(@insdate) and month(insdate)=month(@insdate)
我正在使用 sql server
【问题讨论】:
-
标记您正在使用的 dbms。 (DATETIME 和 DATEDIFF 都是产品特定的函数。)
-
发帖后如何编辑标签?
-
这很容易。点击“编辑”,添加另一个标签,点击“保存”。
-
使用对您来说“最干净”的任何内容。如果此查询被识别为实际性能热点,请测量 不同的方法并查看其中 任何 方法是否满足您的要求。您无法通过尝试学习数千条“总是做 X 而不是 Y”形式的规则来学习编写“高性能”SQL(或任何其他语言,通常)。
标签: sql sql-server performance tsql datetime