我有一张表“学生”,包括以下颜色:
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。也没有帮助。
答案 0 :(得分:0)
我无法确定您的问题究竟在哪里,但是如果您希望显示所有puils
只有select
WHERE
任何SELECT "IDpupil",
"name",
"class"
FROM "pupils"
关闭
{{1}}