Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
这是我正在使用的查询:
SELECT * FROM inventory WHERE status='live' and price<='50' ORDER BY id DESC;
它显示了 50 美元以下的所有物品。但它也显示了所有超过 100 美元的物品?我猜这个问题与这些价格是三位数有关。另一件要提的是,价格还包括价格后的 0.00。
任何指针?
我认为问题在于您有 50 个引号。MySql 可能将其视为字符串。
... AND price <= 50 ORDER BY ....
如果价格列数据类型是“CHAR”(字符串),“100”和“49999”都是 <=“50”。将一种或两种数据类型(列和比较)更改为 DECIMAL(10,2) 或另一种数字类型。