如何在where条件下设置多列不等于零

时间:2013-03-23 10:43:36

标签: php mysql database mysqli

mysql / oracle 中是否有任何方法可以设置 mulitiple列!= 0

我在表格中有10多列,我希望选择那些有价值的列!= 0

一种方法是使用 AND 与表格中的列数一样多次。

exaple是:

    SELECT `id`, `user_name`, `reference_id`, `adventure`, `beach`, `culture`,
   `festival`, `food`, `fun`, `biking`, `ski`, `surf`, `family`, `couple`,
   `single` FROM `ratings` 
    WHERE `adventure`!=0 
    AND `beach`!=0 
    AND `culture`!=0
    AND `festival`!=0
    AND `food`!=0
    AND `fun`!=0
    AND `biking`!=0
    AND `ski`!=0
    AND  `surf`!=0
    AND `family`!=0
    AND `couple`!=0
    AND `single`!=0

有没有更好的方法来执行此操作而不是添加那么多AND / OR

提前致谢!

1 个答案:

答案 0 :(得分:4)

请改为尝试:

SELECT `id`, `user_name`, ...
FROM `ratings` 
WHERE 0 NOT IN (`adventure`, `beach`, `culture`, `festival`, ...)