我在數據庫中有一個'name'列,其值爲'john,smith'。我將一個字符串變量'name_respository'傳遞給一個存儲過程,其值爲'test,test1,john,test2'或'temp,smith,temp1,temp2'。字符串變量'name_repository'的值是在運行時生成的,它們可能是temp或test。如何比較列中的逗號分隔值與Oracle中的字符串集合
現在,這就是我想要做的,我試圖選擇名稱在name_repository中的行。問題是我有'john,smith'作爲名稱,而name_repository只有其中的一個。我需要分離名稱變量john和smith,然後與收集和返回行進行比較。
+----------+----------+
| ID | Name |
+----------+----------+
| 1 | john,smith |
| 2 | james,stone |
| 3 | john,smith |
現在變量我通過可能有史密斯或者約翰還是詹姆斯或石頭等垃圾值。 如果我有史密斯或約翰作爲我的參數,我應該返回第1行和第3行。
查詢應該是這樣的
Select * from table where name in name_repository
我還沒有嘗試過其他答案,但這是最快和整潔 – gizgok