[英]sql query returns 0 if parameter is null (Open Office base)
我有一個表“學生”,它由以下幾行組成:
int IDpupil
varchar name
int class
其中class是一個外鍵並且不能為空,即每個學生都必須上一堂課。
我希望看到每班的所有學生,具體取決於我想在每次新生時指定的班級編號。
如果指定了一個類,以下語句將達到預期目的:
SELECT "IDpupil",
"name",
"class"
FROM "pupils"
WHERE (("class" = :qClass)
OR (:qClass is null))
但是,如果我想查看該表中的所有學生,因此不指定數字,則僅返回“ 0”類的學生。 如果我用名字來做到這一點,那就行了。 在我看來,空參數被強制轉換為0,這是我不想要的。 我怎樣才能解決這個問題?
我嘗試使用一個case語句,該語句應該測試輸入是否為Null或“”,但是我沒有使它起作用。 也許還因為案件陳述的復雜性。 然后我從這里嘗試了此鏈接 。 也沒有幫助。
我不能看到exactely是你probleme,但如果你想desplay所有puils
只是一個大的select
wihtout任何WHERE
接近
SELECT "IDpupil",
"name",
"class"
FROM "pupils"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.