Mysql/PHP如何以浮点格式选择和排序结果?
请给我一个字段值(键入文本),其中包含一些值(文本以及一些int或float值) 因此,我只想选择float和integers值,并按字段value排序主题 目前,我可以单独获得浮点值,但问题是,结果是我得到了文本格式的主题排序,而不是浮点或整数格式(我想这是正常的)。例如:Mysql/PHP如何以浮点格式选择和排序结果?,php,mysql,sql-order-by,Php,Mysql,Sql Order By,请给我一个字段值(键入文本),其中包含一些值(文本以及一些int或float值) 因此,我只想选择float和integers值,并按字段value排序主题 目前,我可以单独获得浮点值,但问题是,结果是我得到了文本格式的主题排序,而不是浮点或整数格式(我想这是正常的)。例如: 33 33358 80 88000 90 99 请各位高手,我怎么告诉我的查询把结果看作是浮动而不是文本,而得到的结果是: 33 80 90 99 33358 88000 提前感谢按照下面的代码使用 ORDER BY
33
33358
80
88000
90
99
请各位高手,我怎么告诉我的查询把结果看作是浮动而不是文本,而得到的结果是:
33
80
90
99
33358
88000
提前感谢按照下面的代码使用
ORDER BY ABS(columnname)
或
两者都应该做同样的事情,但第一个更容易/更快地编写。在查询中选择该变量,然后按该列排序结果集时,将值转换为float/int格式 例如/ 从tablename order by customname中选择CAST(值为十进制(10,5))作为customname
请记住,您可以强制转换为任何您想要的值。在文本类型的字段中存储混合值不是一个好主意。如果您想对字段进行排序和筛选,我建议将它们作为单独的字段使用—文本、int、float等。
如果你作为数据库管理员深入,它的性能会很差。如果
选择ABS(-32),会发生什么代码>?
ORDER BY field * 1
ORDER BY CAST(field as DECIMAL(10,5))