[英]Splitting string in column in table which has multiple values into separate rows
使用 SQL 服務器管理工作室 2016,我有一個列,如果有分隔符;
然后我需要將值分成兩個單獨的行。
我可以將值拆分為單個值,但是當我需要對表中的列執行此操作時它不起作用
表值:
Server Environment
S23 PROD, DEV
S24 PROD
查詢一:
SELECT [server], STRING_SPLIT([Environment]), ';')
FROM [[dbo].[serverstable]
查詢二:
ECLARE @tags NVARCHAR(400), @Environment NVARCHAR(400)
SET @tags = (SELECT [Environment] FROM [dbo].[Servers] WHERE [SERVER] = 'S23')
SET @Environment = (SELECT [Environment] FROM [dbo].[Servers])
BEGIN
IF @Environment LIKE '%;%'
SELECT value
FROM STRING_SPLIT(@tags, ';')
IF @Environment NOT LIKE '%;%'
SELECT @Environment
END
查詢一錯誤:
“STRING_SPLIT”不是可識別的內置 function 名稱。
查詢二的錯誤:
子查詢返回超過 1 個值。 當子查詢跟隨 =, ,=, <, <=, > 時,這是不允許的。 >= 或當子查詢用作表達式時。
預期成績
Server Environment
S23 PROD
S23 DEV
S24 PROD
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.