【发布时间】:2019-06-20 21:08:18
【问题描述】:
我问是因为我需要知道为什么某些函数(split_string、trim)在 SQL Server(使用 SSMS)中不起作用。
如果我运行这样的事情:
SELECT TRIM(' SQL Tutorial! ') AS TrimmedString;
上面写着
消息 195,第 15 级,状态 10,第 60 行
“TRIM”不是可识别的内置函数名称。
是的,我可以使用rtrim 或ltrim,但我还需要string_split 来完成其他任务。
那么问题是我有什么版本?在帮助/关于,它说 v17.9.1。但是根据这个页面,它很清楚地说它是受支持的。
https://docs.microsoft.com/en-us/sql/t-sql/functions/string-split-transact-sql?view=sql-server-2017
那么为什么它不起作用呢?
【问题讨论】:
-
SSMS 是访问数据库引擎的工具/接口...SSMS 的版本不一定与 SSMS 连接到的数据库引擎的版本相同.试试
SELECT @@VERSION -
与 SSMS 无关,与 SQL Server 版本有关。
STRING_SPLIT()是从 2016 年开始的,TRIM()函数是从 2017 年开始的,所以你需要 SQL Server 2017 才能使用两者。使用哪种 SSMS 并不重要。 -
我脑海中闪过这个想法。执行 SELECT @@VERSION 给出:Microsoft SQL Server 2012 (SP4-GDR) (KB4057116) - 11.0.7462.6 (X64) Jan 5 2018 22:11:56
-
呃。我有一个较新的版本,但由于与 Studio Express 的冲突而被卸载。让我再试一次。
标签: sql sql-server string split sql-server-2012