參考~
http://sqlfiddle.com/#!9/50721b/3
SELECT ifnull(MAX(X),0) AS MaxX
FROM tbl
WHERE XID = 1
看起來你對於資料操作有其很大的問題。
當使用 max、min、sum....等統計式的函式。
其筆數已不是原本的資料筆數數量了。
會依照對應的group條件出現各自的筆數。
你的SQL中並沒有使用到group。也就是代表全部處理。
所以無論如何,都至少會有「一筆統計」記錄。
而當無任何資料可供統計的情況下。預設會視為NULL處理。
(記得好像可以調整讓統計函數不會出現NULL而是出現0的參數,不過忘了)
你就利用一下 純真的人 教你的 isNull 。將NULL也視為0就可以了。