我有一个字符串,例如,
“这是一种刺痛,我不知道我有多久”
我想将字符串中的每个单词转换成我的sql表的一行,以便得到:
这是一个字符串
和我不知道等...
我需要能够使用MySql命令行执行此操作。 (我还需要一个相邻的列,每行都填充一个,这有助于/改变你的答案)我想我可以以某种方式使用INSERT String (Words, num) Values (@words, 1)
但我不知道如何让它添加每个单词。有没有简单的方法来做到这一点?如果没有,会怎么做?
答案 0 :(得分:1)
MySQL没有拆分分隔字符串的功能。虽然没有直接的解决方案来处理可变数量的元素,但在MySQL manual page(搜索“拆分”)上对此问题进行了大量讨论。
而不是那样,我会帮助自己生成这样的查询:
SELECT CONCAT('INSERT INTO t1 VALUES ("', REPLACE(REPLACE(TRIM(string_column), '"', '\\"'), ' ', '", "'), '")') FROM t2_with_string