【问题标题】:how to insert string data into table as different column data in a row如何将字符串数据作为一行中的不同列数据插入表中
【发布时间】:2016-02-17 09:07:56
【问题描述】:

如何将字符串数据插入到表中的一行列数据中。我有字符串:

 data= pawan,123,jhs,abc@gmail  

我想把它插入

insert into table values(pawan,123,jhs,abc@gmail)

【问题讨论】:

  • 这个字符串是否总是包含用逗号分隔的四列或者可能会增加?

标签: mysql stored-procedures


【解决方案1】:

假设字符串中只有四列用逗号分隔:

 INSERT INTO table_name VALUES(
    REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',1), LENGTH(SUBSTRING_INDEX(data_string, ',',0)) + 1), ',', ''),
    REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',2), LENGTH(SUBSTRING_INDEX(data_string, ',',1)) + 1), ',', ''),
    REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',3), LENGTH(SUBSTRING_INDEX(data_string, ',',2)) + 1), ',', ''),
    REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',4), LENGTH(SUBSTRING_INDEX(data_string, ',',3)) + 1), ',', '') 

【讨论】:

  • 在最后一行 REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',4), LENGTH(SUBSTRING_INDEX(data_string, ',',2)) + 1), ',', '') ) 我改变了 REPLACE(SUBSTRING(SUBSTRING_INDEX(data_string, ',',4), LENGTH(SUBSTRING_INDEX(data_string, ',',3)) + 1), ',', '') ) 然后它绝对插入正确的数据
猜你喜欢
  • 2016-06-03
  • 2011-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-05
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
相关资源
最近更新 更多