2013-07-12 94 views
1

我想選擇表中的所有內容,其中id列不是特定值。但是,是否有可能將該特定值設爲可選項,並在此情況下返回所有結果。pgSQL:返回所有結果,但可能不是一個結果

看起來好像case可能是我想要的,但它不適合我。我已經試過

WHERE id != '' 

WHERE id (SELECT CASE WHEN $id IS NULL THEN '') 
          ^^ $id could be, say, 10 or NULL 

僅僅是不正確的語法。我怎樣才能做這個查詢?非常感謝。

+0

在什麼情況下你想顯示'id'的特定值? – 2013-07-12 16:51:18

回答

1

試着這麼做:

WHERE (id != v_id OR v_id IS NULL) 

這將返回所有行id != v_id如果v_id不爲空

或者返回所有行如果v_id是空

1

當你想要的任何標識,然後通過$id爲空或爲空。否則傳遞真實的ID。這樣做的空方式:

where (id = $id or $id = '') 

使用空:

where (id = $id or $id is null) 
相關問題