Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更新/修复mysql innoDB数据库中的列数据类型和从字符串到按数字数据类型排序的记录_Mysql_Sql_Sorting_Innodb_Type Conversion - Fatal编程技术网

更新/修复mysql innoDB数据库中的列数据类型和从字符串到按数字数据类型排序的记录

更新/修复mysql innoDB数据库中的列数据类型和从字符串到按数字数据类型排序的记录,mysql,sql,sorting,innodb,type-conversion,Mysql,Sql,Sorting,Innodb,Type Conversion,我需要删除列中每个记录的最后一个字符,即“€”符号,并将数据转换为某种数字类型,记住数据中包含点,如“20.000欧元”或“1.000欧元”或“3.200欧元”,如示例所示: 这个想法是能够对数据DESC或ASC进行排序,这无关紧要,但它现在不起作用 我试过什么 嗯,我想我可以写一个python脚本来做这件事(我知道怎么做),但想知道是否有一个更简单/更快的方法来做这件事 谢谢 在表中创建一个新列,我们称之为newfield,然后执行 更新我的表格集合newfield=CAST(左(oldfi

我需要删除列中每个记录的最后一个字符,即“€”符号,并将数据转换为某种数字类型,记住数据中包含点,如“20.000欧元”或“1.000欧元”或“3.200欧元”,如示例所示:

这个想法是能够对数据DESC或ASC进行排序,这无关紧要,但它现在不起作用

我试过什么

嗯,我想我可以写一个python脚本来做这件事(我知道怎么做),但想知道是否有一个更简单/更快的方法来做这件事


谢谢

在表中创建一个新列,我们称之为newfield,然后执行

更新我的表格集合newfield=CAST(左(oldfield,长度(oldfield)-1))


然后删除新字段。

如果您直接更改表定义,并将列类型更改为int之类的数字,我认为默认情况下,无数字是有限的。但是备份您的数据,我不确定是否还没有尝试过您的解决方案e4c5,最后我决定使用python脚本来实现,更简单、更干净、更快。谢谢你,希望这对其他人有帮助。