我有一个文本字段,存储三个值的组合,':'分隔。 (看起来像A:B:C)。
我想将这些值拆分为表格中的三个实际列,但我不确定这样做的最佳方法。我正在使用sqlite3,任何超级赞赏的帮助!
答案 0 :(得分:1)
首先,更改架构以添加所需的列。我假设你知道怎么做。
其次,运行拆分数据的“更新”查询。
更新mytable set column1 = ...,column2 = ...,column3 = ...;
诀窍是制定“...”以从“源”列中提取正确的列。
您很可能会对ltrim(),rtrim()和CASE(请参阅http://www.sqlite.org/lang_expr.html)执行某些操作,但如果定义了用户定义的函数(可能基于length()),则可能会更容易和substring()。
答案 1 :(得分:0)
如果你使用的是php,它会是这样的:
<强> PHP:强>
$explodedStr = explode(":", $delimitedStr);
<强> SQL:强>
"INSERT INTO tableName (column1, column2, column3)
VALUES ('".$explodedStr[0]."','".$explodedStr[1]."', '".$explodedStr[2]."