精確辨識逗號分隔清單中的數值
挑戰:
在包含逗號分隔資料的欄位中尋找特定值是一項挑戰。 IN
或 LIKE
等標準 SQL 函數可能會因部分匹配而產生不準確的結果。
有效的解決方案:
此查詢提供了一種精確的方法來確定目標值是否存在於逗號分隔清單中:
<code class="language-sql">WHERE (',' + RTRIM(MyColumn) + ',') LIKE '%,' + @search + ',%'</code>
詳細說明:
此解決方案巧妙地使用了字串運算和 LIKE
運算子:
RTRIM
刪除尾隨空格以避免錯誤。 LIKE
運算子在修改的列字串中的任意位置搜尋精確的 @search
值(用逗號括起來)。 範例:
<code class="language-sql">SELECT * FROM table_name WHERE (',' + RTRIM(COLUMN) + ',') LIKE '%,' + 'Cat' + ',%'</code>
解邊緣情況:
這種方法有效地處理:
此技術提供了一種可靠且準確的方法來在逗號分隔的列中進行搜索,克服了更簡單方法的局限性。
以上是如何有效率地搜尋逗號分隔列中的特定值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!