sat*_*ish 10 sql t-sql sql-server
对于以下代码:
DECLARE @ss varchar(60)
SET @ss = 'admin'
select TRIM(@ss)
Run Code Online (Sandbox Code Playgroud)
我有一个错误:
"TRIM"不是公认的内置函数名称
PSK*_*PSK 14
TRIM 在SQL Server中引入(从2017年开始).
在旧版本的SQL Server中执行修剪,您必须使用LTRIM并RTRIM喜欢以下内容.
DECLARE @ss varchar(60)
SET @ss = ' admin '
select RTRIM(LTRIM(@ss))
Run Code Online (Sandbox Code Playgroud)
如果您不喜欢使用LTRIM,RTRIM,您可以创建自己的自定义函数,如下所示.
CREATE FUNCTION dbo.TRIM(@string NVARCHAR(max))
RETURNS NVARCHAR(max)
BEGIN
RETURN LTRIM(RTRIM(@string))
END
GO
Run Code Online (Sandbox Code Playgroud)
您可以将此代码用于旧版本:
SELECT RTRIM (LTRIM (' JKL ')) AS Trimmed
Run Code Online (Sandbox Code Playgroud)
这导致 'JKL'
也许将其设置为较早的兼容性级别。
使用它来找出:
SELECT compatibility_level FROM sys.databases
Run Code Online (Sandbox Code Playgroud)
SQL Server 2017是140
如果更低,就不会识别 TRIM
更改与SQL Server 2017的兼容性
ALTER DATABASE database_name
SET COMPATIBILITY_LEVEL = 140
Run Code Online (Sandbox Code Playgroud)
有关每个SQL Server版本支持的兼容性级别的列表,请查看 ALTER DATABASE(Transact-SQL)兼容性级别。
根据下面的评论,您安装的SQL Server版本是SQL2016。您需要安装SQL Sever 2017才能获得 TRIM