看板 Database 關於我們 聯絡資訊
※ 引述《justyes (justyes)》之銘言: : 目前遇到一個問題,原本只有一個參數寫法如下 : and dfv.ATTRIBUTE1 in nvl(:P_MEA,dfv.ATTRIBUTE1) : 但後來想再增加一個篩選條件,改寫如下 : and dfv.ATTRIBUTE1 in (nvl(:P_MEA,dfv.ATTRIBUTE1),nvl(:P_MEA1,null)) : 但測試時,值還是輸入出來 : 不知小弟哪寫錯 and dfv.ATTRIBUTE1 in (nvl(:P_MEA,dfv.ATTRIBUTE1),nvl(:P_MEA1,null)) 等同於 and ( dfv.ATTRIBUTE1 in (nvl(:P_MEA,dfv.ATTRIBUTE1)) OR dfv.ATTRIBUTE1 in (nvl(:P_MEA1,null)) ) 如果你希望增加一個篩選條件, 應該是加一個 AND 條件才對 EX: and dfv.ATTRIBUTE1 in nvl(:P_MEA,dfv.ATTRIBUTE1) AND dfv.ATTRIBUTE1 = :P_MEA1 另外... nvl(:P_MEA1,null) <-- 這樣的語法似乎有點詭異?? ==> P_MEA1 如果是 NULL 的話, 就給他 NULL ... 囧 然後又把 NULL 丟去當 AND 條件.... <囧> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.131.23