如何在SQL Server中使用split?

안녀엉*_*안녀엉 2 c# sql-server

我想在更新查询中拆分第一个单词。

-标题:“ Visual Studio”

UPDATE SET TITLE = TITLE.Split(' ')[0]
Run Code Online (Sandbox Code Playgroud)

-结果:“视觉”

Tim*_*sen 7

SPLIT据我所知,SQL Server中没有任何功能。这里一个STRING_SPLIT功能,在2016年或以后的版本,但不一定会在这里工作。它可能无法按预期运行的原因是它会生成一个作为输出,其中包含排序的各个术语。

如果要更新该TITLE字段以仅保留第一个单词,请考虑使用基本字符串函数:

UPDATE yourTable
SET TITLE = SUBSTRING(TITLE, 1, CHARINDEX(' ', TITLE) - 1)
WHERE CHARINDEX(' ', TITLE) > 0;
Run Code Online (Sandbox Code Playgroud)

上面的逻辑处理了给定标题中可能没有空格的情况,即标题仅包含一个单词。在这种情况下,更新只会跳过该记录。