“”的mySQL语法错误=0〃;


mySQL syntax error for "=0"

我想查询与十进制数=0.00匹配的结果,然后在另一个查询中查找大于0.00的结果。

我必须只使用一个变量和一个查询语句。

所以我写道:

SELECT * 
FROM table 
WHERE price $price

然后$price变量可以有两个值,一个是:"= 0.00",另一个是"> 0.00"

但我得到了错误:

1064-您的SQL语法出现错误;查看与MySQL服务器版本相对应的手册,以获得在第1行"=0.00"LIMIT 0,30'附近使用的正确语法

有没有其他方法可以解决这个问题,得到我不希望的结果?有什么想法吗?

(我必须有一句话,一个变量…)

根据列数据类型的不同,price在数据库中可以显示为字符串,也可以显示为实际的float/double。检查您的列数据类型,这样您就可以创建正确的比较类型,即price=0.00或price='0.00'。根据列存储的数据类型,有很多优点,算术可以内联执行,但如果您的数据类型是varchar/某种等效的字符串,则您将无法在使用的任何SQL引擎中使用内置方法。