我想将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);

10-08 06:17