」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何從SQL中的逗號分隔列表中可靠地提取n個值?

如何從SQL中的逗號分隔列表中可靠地提取n個值?

發佈於2025-02-12
瀏覽:465

[

How to Reliably Extract the Nth Value from a Comma-Separated List in SQL, Handling Nulls?
regex solught from nulls

',1,2)數據 來自Dual; d - 2

此查詢使用正則表達式[^,]從列表中成功地從列表中檢索第二個非null值(“ 2”)。但是,當第二個值為null時,查詢返回第三個項目:,1,2 ) 數據 來自Dual; d - 3 要解決此問題,需要更靈活的正則允許可選字符:

*',1,4)數據 來自Dual; d - 3

但是,此正則是超過null的數字。

最終,該解決方案在於更複雜的正則是:

數據 ----
將此解決方案封裝到可重複使用的函數中,請考慮以下代碼:[&&&&&&&&&&&&&&&&&&&&&&&&&&&g get_list_element(string_in_in varchar2,eylement_in number,delimiter_in varchar2 varchar2
開始
  返回regexp_substr(string_in,'(。
end get_list_element; [&& && && &&華選擇了特定元素,該解決方案提供了一種可靠,優雅的方法,用於從Oracle SQL中的逗號分隔列表中提取值。
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3