我有一些數據,我想基於可能存在或不存在的分隔符進行拆分。基於分隔符的T-SQL拆分字符串
示例數據:
John/Smith
Jane/Doe
Steve
Bob/Johnson
我使用下面的代碼拆分此數據爲第一和最後一個名字:
SELECT SUBSTRING(myColumn, 1, CHARINDEX('/', myColumn)-1) AS FirstName,
SUBSTRING(myColumn, CHARINDEX('/', myColumn) + 1, 1000) AS LastName
FROM MyTable
的結果,我想:
FirstName---LastName
John--------Smith
Jane--------Doe
Steve-------NULL
Bob---------Johnson
只要所有行都具有預期的分隔符,此代碼就可以正常工作,但當行不行時會出錯t:
"Invalid length parameter passed to the LEFT or SUBSTRING function."
如何重新編寫此項以正常工作?
正是我一直在尋找,謝謝! – Whatevo
很棒!謝謝 – Mikel