MySQL - 选择field1和field2都大于0的位置

时间:2016-08-22 10:46:56

标签: mysql

我正在尝试执行一个select查询,我从一个表中选择,其中field1和field2都大于0。

NB field1& field2都是INT / NOT NULL。

我尝试过按照以下方式做的事情:

SELECT * FROM tblname WHERE field1 > "0" AND field2 > "0"

SELECT * FROM tblname WHERE field1 <> "0" AND field2 <> "0"

SELECT * FROM tblname WHERE field1 != "0" AND field2 != "0"

但是,当我只是匹配是否为0时,此查询确实有效 -

SELECT * FROM tblname WHERE field1 = "0"

我需要检查这些以生成一个已经收到应用程序评分的申请人列表,因此field1和field2都必须已经满足,因此假设通过数字评分,匹配大于0会起作用,但由于某种原因,它没有?

2 个答案:

答案 0 :(得分:0)

对于更简洁的代码,您可以使用LEAST(),它将较小的参数放在parantheses中。

我相信你的问题是你在比较字符串而不是数字(你提到那些是数字字段):

SELECT * FROM YourTable
WHERE LEAST(field1,field2) > 0

如果这不能解决您的问题 - 编辑您的问题并定义“不起作用”,则没有选择任何内容?引发错误? ..

答案 1 :(得分:0)

你可以试试这个:

SELECT * FROM tblname WHERE field1 <> 0 AND field2 <> 0