@Barmar
おかげで私は
/* */
SET @VInput = (SELECT REPLACE(REPLACE(REPLACE("23:4,13:6^12:1^15:3^45:6,99:2,64:1^" , ',', ' '), ':', ' '), '^', ' ') FROM TABLE_NAME WHERE CONDITION);
/*セッションvarible */
をスペースで特殊文字を交換しVaribaleに値を取った解決策を見つけました
SET @VRow := 0;
/サブストリングのインデックスが
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(@VInput, ' ', (@VRow := @VRow + 1) * 2 - 1), ' ', -1) as RESP, SUBSTRING_INDEX(SUBSTRING_INDEX(@VInput, ' ', (@VRow) * 2), ' ', -1) as Count FROM INFORMATION_SCHEMA.`COLUMNS` WHERE @VRow * 2 < CHAR_LENGTH(@VInput) - CHAR_LENGTH(REPLACE(@VInput, ' ', ''));
/
inotのcoloumnを区切るために感謝のStackOverflow .. :)
あなたの予想出力は何ですか?共有する。 – 1000111
カラムa 23,13,12,15,45 カラムb 4,6,1,3,6 – prat
'SUBSTRING_INDEX'関数を見てください。特定の数のデリミタの前後にある文字列の部分を見つけるために使用することができます。 – Barmar