2012-09-20 136 views
0

可能重複:
Can Mysql Split a column?分割分隔字符串到變量在存儲過程中

我將包括從我的Java代碼過濾參數的逗號分隔字符串傳遞給我的mysql存儲過程。這將由程序的IN參數之一提取。

我想將這個逗號分隔的字符串拆分爲單獨的變量並在不同的查詢中使用它們。

在谷歌上搜索,我發現this MySQL substring function

但是有它的問題:

mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2); 
    -> 'www.mysql' 

但我想wwwmysqlcom對此有沒有規定要得到1分串delimeter到下一個等...

回答

2

MySQL以及其他RDBMS不提供這種功能。

你在找什麼是for this,一個全功能的分配器功能。

你想要的東西在SO上已經被問了好幾次了。

Here,herehere你有同樣的問題。

+0

正如Yaroslav所說,這是可能的,但是當分隔可能包含逗號的變量時,會遇到問題。 – Kermit

+0

@njk我不這麼認爲,如果你看看函數,它有2個參數,第二個是你想要使用的分隔符,它可以是任何東西,逗號,點,斜線。我還沒有測試過是否可能是一些奇怪的角色,甚至超過一個角色。 – Yaroslav

+0

是的,有。看看[this](http://stackoverflow.com/questions/2182668/how-to-split-comma-separated-text-in-mysql-stored-procedure)和[this](http:// stackoverflow .COM /問題/ 9953114 /拆分逗號分隔字符串函數-DB-CHARINDEX - 不 - 不存在)。 – Kermit