我可以将值从一个文本字段拆分为多个文本字段吗?

时间:2010-06-07 01:08:18

标签: sql sqlite

我有一个文本字段,存储三个值的组合,':'分隔。 (看起来像A:B:C)。

我想将这些值拆分为表格中的三个实际列,但我不确定这样做的最佳方法。我正在使用sqlite3,任何超级赞赏的帮助!

2 个答案:

答案 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]."