我有一个包含门牌号和单元号的列.我需要两个不同列中的门牌号和单元号.
单元号包含在括号内.以下是示例数据:
Column 1 Column 2
85 (Unit A)
85 (Unit B)
86
87 - 89 (Unit A)
Run Code Online (Sandbox Code Playgroud)
期望的结果如下:
Column 1 Column 2
85 Unit A)
85 Unit B)
86
87 - 89 Unit A)
Run Code Online (Sandbox Code Playgroud)
值由'('分隔
我该怎么做呢?
编辑
UPDATE your_table
SET column2 = SUBSTRING_INDEX(your_table.column1,'(', -1),
column1 = SUBSTRING_INDEX(your_table.column1,'(', 1)
Run Code Online (Sandbox Code Playgroud)
此查询的结果如下:
Column 1 Column 2
85 Unit A)
85 Unit B)
86 86
87 - 89 Unit A)
Run Code Online (Sandbox Code Playgroud)
我不需要更新'86'第2列!如果没有'('我怎么做?)我希望它保持为null
对于选择,
SELECT SUBSTRING_INDEX( Col1 , '(', 1 ) AS C1,SUBSTRING_INDEX(SUBSTRING_INDEX( Col1 , '(', 2 ),'(',-1) AS C2 from Tablename
Run Code Online (Sandbox Code Playgroud)
用于更新
Update TableName set Column1= SUBSTRING_INDEX( Column1 , '(', 1 ) ,Column2= SUBSTRING_INDEX(SUBSTRING_INDEX( Column1 , '(', 2 ),'(',-1) ;
Run Code Online (Sandbox Code Playgroud)