我想将MySQL数据库的一列拆分为两个不同的列。
在这里,我想分割,
之后的“long”列中的每个值,并用分割的相关部分更新“lat”列。
最佳答案
您可以使用substring_index
函数作为
mysql> select substring_index('N27.1963456,E85.234567',',',-1);
+--------------------------------------------------+
| substring_index('N27.1963456,E85.234567',',',-1) |
+--------------------------------------------------+
| E85.234567 |
+--------------------------------------------------+
因此update命令将
update your_table set `lat` = substring_index(`long`,',',-1);
更新
如何删除第一个字符
mysql> select RIGHT('foobarbar', length('foobarbar')-1);
+-------------------------------------------+
| RIGHT('foobarbar', length('foobarbar')-1) |
+-------------------------------------------+
| oobarbar |
+-------------------------------------------+
mysql> select RIGHT('E85.234567', length('E85.234567')-1);
+---------------------------------------------+
| RIGHT('E85.234567', length('E85.234567')-1) |
+---------------------------------------------+
| 85.234567 |
+---------------------------------------------+
所以你可以
update your_table set `lat` = RIGHT(`lat`,length(`lat`)-1);