2013-03-01 108 views
0

我真的很新的SQL,我有这个小问题:插入不同的输入值合并到一列(MySQL的)

我有许多输入一个页面,让我们说

输入1,输入2 ,输入3,输入4

而且我有AA表

TABLE_A 
Col1 
Col2 
Col3 

什么我想要做的是插入Input1Col1(这是一件简单的事情),并将所有其他输入(2,3和4)插入Col2,用空格或“|”隔开。

如果任何人都可以提供帮助,那将是美好的。

+0

多数民众赞成简单的字符串连接 – 2013-03-01 10:01:47

回答

1
INSERT INTO Table_A (Col1, Col2) 
VALUES ('Input1', CONCAT_WS('|', 'Input2', 'Input3', 'Input4')) 
1

结帐String Functions它给你提供了有关由“SPACE”或“|”分隔的简要知识。要么 ”,”。

在上面的链接中检查一些功能,以帮助您在未来的例子。

  1. CONCAT_WS()返回连接具有分隔
  2. CONCAT()返回连接字符串
  3. ELT()返回字符串的索引号
  4. EXPORT_SET()返回一个字符串,对于每一位在 值位设置,你会得到一个上字符串,并为每个未设置位,您将得到一个 off字符串
  5. FIELD()返回索引(位置)在 后续参数
  6. FIND_IN_SET()返回的第一个参数的索引位置内 第二个参数

使用CONCAT()第一个参数插入不同的输入值转换成一列。

INSERT INTO Table_A (Col1, Col2) 
VALUES ('Input1', CONCAT('|', 'Input2', 'Input3', 'Input4')) 

这可以帮助你。

+0

谢谢你的帮助,但现在我有另一个问题,至少我应该插入In1的一个到Col1的前缀,所以如果input1 = 50的值我想插入它在col1中,像这样的IC-50,前缀为IC – PaxBin 2013-03-01 11:11:03

+0

@ user2122969“IC-”,适用于所有数据库领域。 – 2013-03-01 11:20:03