Sql server T-SQL查询帮助where子句中的两个单引号

Sql server T-SQL查询帮助where子句中的两个单引号,sql-server,tsql,Sql Server,Tsql,我一直在试图理解这个t-sql查询,但我不确定“where”子句的含义。以下是查询: UPDATE s SET s.ID1 = p.ID1, s.FIRST_NAME = p.FIRST_NAME, s.LAST_NAME = p.LAST_NAME, s.DEPT_DESCR = p.DEPT_DESCR FROM dbo.DIRECTORY_VW S JOIN ps.STAGING_DIRECTORY_VW P ON s.ID = p.ID WHERE p.ID &

我一直在试图理解这个t-sql查询,但我不确定“where”子句的含义。以下是查询:

UPDATE s
SET s.ID1 = p.ID1,
    s.FIRST_NAME = p.FIRST_NAME,
    s.LAST_NAME  = p.LAST_NAME,
    s.DEPT_DESCR = p.DEPT_DESCR
FROM dbo.DIRECTORY_VW S
JOIN ps.STAGING_DIRECTORY_VW P ON s.ID = p.ID
WHERE p.ID <> ''
updates
设置s.ID1=p.ID1,
s、 FIRST_NAME=p.FIRST_NAME,
s、 LAST_NAME=p.LAST_NAME,
s、 部门描述=部门描述
从dbo.DIRECTORY\u VW S
在s.ID=P.ID上加入ps.STAGING\u目录\u VW P
其中p.ID“
据我所知,查询会使用来自暂存目录(ID相同)的值更新目录视图上的ID1、名字、姓氏和部门描述值,但
'
是什么意思<代码>在T-SQL中并不相等,但我很难找到两个单引号的作用


提前谢谢

两个背对背的撇号(
'
)是表示空字符串的常用方式,因此
WHERE
子句只是表示
p.ID
不等于空字符串的位置。

两个背对背的撇号(
'
)是表示空字符串的常用方式,因此,
WHERE
子句只是其中
p.ID
不等于空字符串。

'
在tsql中是空字符串。它是一个不为NULL的字符串,但其中也没有任何内容

所以

someVal'
与tsql中的
someVal不为空不相同
'
是空字符串。它是一个不为NULL的字符串,但其中也没有任何内容

所以


someVal'
someVal不为NULL

两个单引号表示空字符串,两个单引号表示空字符串,