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

How to use having caulse?

尚未結案
skp
一般會員


發表:14
回覆:19
積分:6
註冊:2002-11-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-01-25 13:26:24 IP:218.103.xxx.xxx 未訂閱
小弟想請教一下,有關having 的問題。 我用下面這句 sql時出現了error - "Capability not supported'. 請問是不是我的sql有問題? 還有having 應該是 having 還是 having by? sql.text := 'select inv_no,sum(discount) as dis, sum(pay_amt) as pay from "d:\foxdata\report\MLS212.DBF" group by inv_no having inv_no >1'; 謝謝
FrederickPau
資深會員


發表:4
回覆:161
積分:268
註冊:2002-11-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-01-25 21:09:18 IP:61.228.xxx.xxx 未訂閱
你的資料庫是 SQL Server 嗎?    如果是其他的資料庫, 建議直接改成 'select inv_no,sum(discount) as dis, sum(pay_amt) as pay from "d:\foxdata\report\MLS212.DBF" where inv_no >1 group by inv_no'
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-01-25 23:42:16 IP:61.216.xxx.xxx 未訂閱
改這樣試看看 sql.text := 'select inv_no,sum(discount) as dis, sum(pay_amt) as pay from MLS212 WHERE inv_no >' #39 '1' #39 ' group by inv_no '; 另外你的d:\foxdata\report\路徑看看是不是要設定在BDE裡面ㄋ?? 假設叫做ABC 然後再由Query 的 DatabaseName 設定為ABC... TRY TRY SEE
引言: 小弟想請教一下,有關having 的問題。 我用下面這句 sql時出現了error - "Capability not supported'. 請問是不是我的sql有問題? 還有having 應該是 having 還是 having by? sql.text := 'select inv_no,sum(discount) as dis, sum(pay_amt) as pay from "d:\foxdata\report\MLS212.DBF" group by inv_no having inv_no >1'; 謝謝
發表人 - chih 於 2003/01/25 23:46:55
skp
一般會員


發表:14
回覆:19
積分:6
註冊:2002-11-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-01-27 11:13:22 IP:218.103.xxx.xxx 未訂閱
先謝謝兩位,我是用BDE Delphi 5.0 其實having inv_no > 1只是一個例子,想做到的是 'select inv_no, discount/pay_amt from "d:\foxdata\report\MLS212.DBF" group by inv_no having discount/pay_amt > 0.3' 其實我想找出discount/pay_amt 大過30%的record. 謝謝
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-01-27 13:54:56 IP:210.58.xxx.xxx 未訂閱
引言: 先謝謝兩位,我是用BDE Delphi 5.0 其實having inv_no > 1只是一個例子,想做到的是 'select inv_no, discount/pay_amt from "d:\foxdata\report\MLS212.DBF" group by inv_no having discount/pay_amt > 0.3' 其實我想找出discount/pay_amt 大過30%的record. 謝謝
就你的 query 來看是沒有問題的, 請問你的 database 是什麼??
skp
一般會員


發表:14
回覆:19
積分:6
註冊:2002-11-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-01-28 10:50:07 IP:218.103.xxx.xxx 未訂閱
引言:
引言: 先謝謝兩位,我是用BDE Delphi 5.0 其實having inv_no > 1只是一個例子,想做到的是 'select inv_no, discount/pay_amt from "d:\foxdata\report\MLS212.DBF" group by inv_no having discount/pay_amt > 0.3' 其實我想找出discount/pay_amt 大過30%的record. 謝謝
就你的 query 來看是沒有問題的, 請問你的 database 是什麼??
我是用BDE Dbase Delphi 5.0. 但是它出現了一個error -'Capability not supported', 不知道為甚麼。 還有就是discount/pay_amt計算之後有小數點出現,有方法捨去這些小數點嗎? 感謝
FrederickPau
資深會員


發表:4
回覆:161
積分:268
註冊:2002-11-04

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-01-29 01:34:29 IP:61.228.xxx.xxx 未訂閱
沒記錯的話 ... DBASE 是不支援 HAVING 這種語法的    所以建議你改 'select inv_no, discount/pay_amt from "d:\foxdata\report\MLS212.DBF" where discount/pay_amt > 0.3 group by inv_no'
skp
一般會員


發表:14
回覆:19
積分:6
註冊:2002-11-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-01-29 13:06:48 IP:218.103.xxx.xxx 未訂閱
引言: 沒記錯的話 ... DBASE 是不支援 HAVING 這種語法的 所以建議你改 'select inv_no, discount/pay_amt from "d:\foxdata\report\MLS212.DBF" where discount/pay_amt > 0.3 group by inv_no'
謝謝,所以現在都用這個方法,但是怎麼捨去小數點呢? 請幫忙
系統時間:2024-06-26 9:10:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!