我有一个包含门牌号和单元号的列。我需要两个不同栏中的门牌号码和单位号码。
单位编号包含在括号内。以下是样本数据:
Column 1 Column 2
85 (Unit A)
85 (Unit B)
86
87 - 89 (Unit A)
所需结果如下:
Column 1 Column 2
85 Unit A)
85 Unit B)
86
87 - 89 Unit A)
值由'('
分隔我该怎么做?
修改
UPDATE your_table
SET column2 = SUBSTRING_INDEX(your_table.column1,'(', -1),
column1 = SUBSTRING_INDEX(your_table.column1,'(', 1)
此查询的结果如下:
Column 1 Column 2
85 Unit A)
85 Unit B)
86 86
87 - 89 Unit A)
我不需要更新'86'第2列!如果没有'('我怎么做?
,我希望它保持为null答案 0 :(得分:4)
供选择,
SELECT SUBSTRING_INDEX( Col1 , '(', 1 ) AS C1,SUBSTRING_INDEX(SUBSTRING_INDEX( Col1 , '(', 2 ),'(',-1) AS C2 from Tablename
更新
Update TableName set Column1= SUBSTRING_INDEX( Column1 , '(', 1 ) ,Column2= SUBSTRING_INDEX(SUBSTRING_INDEX( Column1 , '(', 2 ),'(',-1) ;
答案 1 :(得分:0)
UPDATE your_table SET column1 = SUBSTRING_INDEX(your_table.column1,'(', 1), column2 = SUBSTRING_INDEX(your_table.column1,'(', -1)