相关疑难解决方法(0)

SQL查询中的日期范围的DATEDIFF()或BETWEEN

我最近被告知BETWEEN在SQL中使用该方法有点不可靠,因此我应该使用它DATEDIFF().但是,另一位程序员告诉我情况并非如此,BETWEEN只要日期格式正确,该方法在所有情况下都能很好地运行.

请有人通过陈述哪种方法更好以及为什么解决这个问题?

目前我的日期范围SQL如下所示:

DATEDIFF(d,'01-Jan-1970',SIH.[Something_Date]) >= 0 AND DATEDIFF(d,'01-Jan-2013',SIH.[Something_Date]) <= 0
Run Code Online (Sandbox Code Playgroud)

但是,如果我能确定它是可靠的,我宁愿这样写它:

SIH.[Something_Date] BETWEEN '01-Jan-1970' AND '01-Jan-2013'
Run Code Online (Sandbox Code Playgroud)

在这种特殊情况下,我使用的是MsSQL,但是,我已经标记了MySQL,因为我想知道这是否也适用于此

mysql sql sql-server datediff

4
推荐指数
1
解决办法
8104
查看次数

标签 统计

datediff ×1

mysql ×1

sql ×1

sql-server ×1