PHP / MYSQL:小于或等于50显示数百个记录?

时间:2013-03-13 19:35:42

标签: php mysql operators

继承我正在使用的查询:

SELECT * FROM inventory WHERE status='live' and price<='50' ORDER BY id DESC;

显示50美元以下的所有商品。但是它还显示超过100美元的所有物品?我猜这个问题与这些价格是三位数有关。另外值得一提的是价格也包括.00后的价格。

任何指针?

2 个答案:

答案 0 :(得分:1)

我认为问题是你有50个引号。 MySql可能将它视为一个字符串。

... AND price <= 50 ORDER BY ....

答案 1 :(得分:0)

如果price column数据类型为&#34; CHAR&#34; (字符串),&#34; 100&#34;,&#34; 49999&#34;都是&lt; =&#34; 50&#34;。将一种或两种数据类型(列和比较)更改为DECIMAL(10,2)或其他数字类型。