T-SQL 中使用分隔符分割字串
T-SQL 中,透過分割字串可以實現從長字串中提取特定資訊使用分隔符號。事實證明,這種技術在處理複雜的結構化資料時特別有用。
範例場景
考慮一個表,該表的列中包含一個字串,該字串具有多個鍵值對,這些鍵值對由豎線(|) 和等號(=) 字元。目標是僅檢索與「客戶端名稱」關聯的特定值。
使用 SUBSTRING 和 STUFF 函數的解
要提取所需的值,我們可以利用SUBSTRING 和 STUFF函數的組合:
Select col1, col2, LTRIM(RTRIM(SUBSTRING( STUFF(col3, CHARINDEX('|', col3, PATINDEX('%|Client Name =%', col3) + 14), 1000, ''), PATINDEX('%|Client Name =%', col3) + 14, 1000))) col3 from Table01
細分解
查詢採用以下步驟:
效能注意事項
雖然 CharIndex 和 PatIndex 都可以用於分隔符識別,但效能測試顯示它們產生類似的結果。因此,它們之間的選擇往往是優先的。
以上是如何從 T-SQL 中的分隔字串中提取特定值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!