SQL Server双引号问题

时间:2015-03-02 09:53:57

标签: sql-server datediff double-quotes

让我们举个例子。

DATEDIFF函数具有以下签名:

DATEDIFF ( datepart , startdate , enddate )

datepart必须由SQL关键字提供。让我们说,分钟,我们可以使用其中一个关键字:minutemim

如果我要执行此声明

select datediff(mi,'2012-April-09','2013-April-08')

它将具有与此相同的效果:

select datediff("mi",'2012-April-09','2013-April-08')

满足这些双引号时会发生什么?

什么是SQL Server与双引号内的内容有关?

1 个答案:

答案 0 :(得分:0)

SQL Server将包含为字符串的选项解释为与没有它的情况相同,或者将其包含在其他字符中以供该用途使用 - 如[] - 和将其与list of valid datediff options匹配。如果它不匹配,则它在解析阶段返回错误(消息155)并且查询将不会运行(这可能导致查询的其他部分未运行,如果它是较大脚本的一部分)并且如果它确实匹配,然后继续正常。