在SQL Server中,有一个内置函数为您引用一个称为QUOTENAME的标识符。是否有相反的功能并再次删除引号?
换句话说,在下面的代码示例中,我将SOMEFUNCTION替换为什么,以使其对于可以初始化@name的任何值返回1?
declare @name nvarchar(50) = 'hello]'
select
case
when SOMEFUNCTION(QUOTENAME(@name)) = @name then 1
else 0
end
最佳答案
使用 PARSENAME
:
declare @name sysname = quotename('foo]');
print @name;
set @name = parsename(@name, 1);
print @name;
[foo]]]
foo]