如果参数为null,则sql查询返回0(Open Office base)

时间:2014-08-05 13:41:24

标签: sql

我有一张表“学生”,包括以下颜色:

int      IDpupil
varchar  name
int      class

其中class是外键而不是可空的,即每个学生都必须在课堂上。

我希望看到班级中的所有学生,这取决于我想在每次新课时指定的班级编号。

如果我指定了一个类,则以下语句是预期的:

SELECT "IDpupil", 
       "name", 
       "class" 
  FROM "pupils" 
 WHERE (("class" = :qClass) 
        OR (:qClass is null))

但是如果我想看到该表中的所有学生,因此没有指定一个数字,它只返回类“0”的学生。如果我用名字来做这件事就行了。在我看来,null参数被转换为0,我不想要。我该如何解决这个问题?

我尝试使用case语句,该语句应该测试输入是Null还是“”,但我没有让它工作。也许还有案例陈述的复杂性。然后我从link尝试了这个here。也没有帮助。

1 个答案:

答案 0 :(得分:0)

我无法确定您的问题究竟在哪里,但是如果您希望显示所有puils只有select WHERE任何SELECT "IDpupil", "name", "class" FROM "pupils" 关闭

{{1}}