sql-server - QUOTENAME 函数的相反函数是什么?

标签 sql-server tsql

在 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]

关于sql-server - QUOTENAME 函数的相反函数是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30302108/

相关文章:

sql - SQL 中与 LIKE 条件匹配的空字符串变量

json - "expand"/在 MSSQL 上通过 JSON 值加入 SQL 选择

sql-server - 如何创建其效果无法回滚的存储过程?

sql-server - 如何创建引用复合主键中一列的外键

C# 登录页面。 SQL 服务器 "sda.Fill(dt); "错误

sql - T-SQL 多重性多对五或更多/许多 (0...* -> 5...*)

sql - 如何将值 'NULL'输入到SQL Server中的nvarchar列中?

sql-server - INNER JOINS 中的多个 ON 子句在一起意味着什么

sql - 对象或列名称缺失或为空

sql - 安装SQL Server 2014 Express后找不到本地数据库