2014-02-26 39 views
0

所以我有一個字符串是5個字符的倍數的列,如「12345」或「abcde12345」或「asdfghjkli12345」。我想要做的是編寫一個查詢來將每個這些字符串分成5個字符塊並返回不同的字符串。每5個字符分割一個字符串並獲得不同的字符串

因此,與 「12345」, 「abcde12345」, 「asdfghjkli12345」

我還是會回到 「12345」, 「ABCDE」 「asdfg」 和 「hjkli」

這可能嗎?

回答

0

MySQL不包含分割分隔字符串的函數。儘管分離的數據通常會在關係數據中分割成單獨的字段,但是在初始數據加載/驗證期間或在文本字段中保存此類數據的情況下,分割數據可能很有用。

以下公式可用於提取分隔列表中的第N個項目,在本例中爲示例逗號分隔列表中的第3個項目「ccccc」。 (substring_index('aaa,bbbb,ccccc',',',3),length(substring_index('aaa,bbbb,ccccc',',',3 - 1))+ 1) ,'','')ITEM3

上述公式不需要將第一個項目作爲特殊情況處理,並且在項目數小於請求的位置時正確返回空字符串。

您也可以創建自己的拆分功能並使用它。 Split value from one field to two

來源:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html

0

這聽起來像它會是SQL的限制外,當然就需要一種編程語言。在任何3GL中這都非常容易。