Mysql查询比较字符串(varchar)为整数

use*_*343 2 php mysql comparison type-conversion

我不确定 mysql 查询中是否有函数。我有一个价格表,列名是“price”,它的类型是 VARCHAR()。出于多种原因,我有意将其用作 VARCHAR。

现在的问题是,如果我想搜索最高价格为 100000 的产品,但在我的专栏中,我们有不同类型的价格,示例如下:-

  1. 待定 374,500
  2. 谈判
  3. 299,000

我正在寻找一个像 intVal() 这样的函数,它首先将字段值本身转换为 INTEGER 并进行比较。以下是我当前的查询语句:-

... AND price <= $maximum_price

可能是这样的应该是解决方案: intVal(price) <= $maximum_price

对解决方案的任何帮助或方向表示赞赏。干杯

Vai*_*shu 5

尝试这个...

字符串值为“0”。其他值已排序..

SELECT CAST(price AS UNSIGNED INTEGER) price 
FROM tt order by price desc
Run Code Online (Sandbox Code Playgroud)