線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1232
推到 Plurk!
推到 Facebook!

QRExpr計算空值的問題

尚未結案
kyo15b
一般會員


發表:15
回覆:7
積分:4
註冊:2005-06-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-17 14:32:20 IP:218.175.xxx.xxx 未訂閱
在QREPORT裡使用QRExpr加總四個來自不同Query的欄位 但是可能會遇到某個欄位會為空值的情形 要怎麼做處理
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-17 15:03:04 IP:61.70.xxx.xxx 未訂閱
您好: 會遇到空值,就像下面這樣判斷就可以了. if (Query.FieldByName(Field1).AsString<>'') then Total:=Total Query.FieldByName(Field1).AsInteger if (Query.FieldByName(Field2).AsString<>'') then Total:=Total Query.FieldByName(Field2).AsInteger ....
kyo15b
一般會員


發表:15
回覆:7
積分:4
註冊:2005-06-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-17 15:38:00 IP:218.175.xxx.xxx 未訂閱
如果我在Expression裡面輸入 total_sales if(total_sales2='',0,total_sales2) 這樣也能達到同樣的效果嗎? 目的就是要做成nvl(total_sales,0) nvl(total_sales2,0) 不過Expression裡面好像不能使用nvl函數 發表人 - kyo15b 於 2005/06/17 15:49:20
kyo15b
一般會員


發表:15
回覆:7
積分:4
註冊:2005-06-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-17 16:20:00 IP:218.175.xxx.xxx 未訂閱
不好意思 我有點走錯方向了!! 我要計算的四個欄位分別由不同的四個SQL產生 因為存在於會有可能發生某個SQL沒有篩選出任何東西的情形 所以有可能會有某個欄位不存在的情形 那要怎麼在Expression裡面讓他們加總起來 像是if(total_sales is not exists,0,total_sales)的方法 不過is no exists好像不能在這邊使用,謝謝!!
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-17 17:13:47 IP:61.70.xxx.xxx 未訂閱
您好: 您下SQL怎麼會出現欄位不存在的狀況???是欄位不存在還是值不存在,欄位應該不會不存在,如果是有空值應該是不能用QRExpr,請參考下面這篇 http://delphi.ktop.com.tw/topic.php?topic_id=66443 必須要使用像我上面寫的方式去做加總. 發表人 - supman 於 2005/06/17 17:23:30
kyo15b
一般會員


發表:15
回覆:7
積分:4
註冊:2005-06-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-06-17 17:52:03 IP:218.175.xxx.xxx 未訂閱
不好意思 是欄位不存在的問題 因為我是利用兩個SQL來做處理 當SQL1成立才會有Sales1欄位的存在(不成立便不會執行SQL1) 當SQL2成立才會有Sales2欄位的存在 同時成立的話 便要做加總的動作Total=Sales1 Sales2 如果只有一個成立的話便會是Total=Sales1或是Total=Sales2 大概是這樣的情形 ^^"
系統時間:2024-05-19 13:23:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!