請教各位大大 如何統計出 每月的的營業額 |
尚未結案
|
eric0426
一般會員 發表:2 回覆:5 積分:1 註冊:2004-09-15 發送簡訊給我 |
各位大大
每日營業.dbf 資料如下 日 期 金額
======== ======
92.01.01 10256
92.01.02 8653
92.01.03 9653
92.01.04 12568
: :
: :
92.12.30 5658
92.12.31 13568
======== ======= 請教各位大大 如何統計出 每月的的營業額
使用BDE 和 TQery 我試過以下 的 SQL 敍述.. 無法執行, select substring(日期 from 1 for 5) , sum(金額)
from 每日營業額.dbf
group by substring(日期 from 1 for 5) ; 實在不知如何統計年度每月的營業額, 有勞各位大大
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
eric0426
一般會員 發表:2 回覆:5 積分:1 註冊:2004-09-15 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
eric0426
一般會員 發表:2 回覆:5 積分:1 註冊:2004-09-15 發送簡訊給我 |
cashxin2002版主您好 子Select 測試成功
Select SubString(日期 From 1 For 5) As New_Date, 金額 From 每日營業額.dbf 但合併最後的
Select New_Date, Sum(金額)
From (Select SubString(日期 From 1 For 5) As New_Date, 金額 From 每日營業額.dbf)
Group By New_Date 可是 出現以下訊息
invalid use of keyword
Token : Select
Line Number : 2 即使不加Group by 也會出錯
是不是 From 不可以加 子Select
還是我語法有打錯 ?????
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ From的語法后可以使用Select查詢子句﹒
若Select中使用Sum()的語法﹐而后面不加Group By子句﹐這樣是不正确的觀念﹐既然是在做合計﹐若沒有一個歸類的條件﹐SQL無法确定合計的條件﹒
我使用Access資料庫測試同樣的SQL語句﹐只將SubString子句改成Mid﹐可以正常查詢出資料﹒
可以將此SQL拆開試試﹕
Select SubString(日期 From 1 For 5) As New_Date, 金額 From 每日營業額.dbf
//此句您可以試過可以了﹐就將其做為Select子句﹐單獨查詢New_Date如下﹕
Select New_Date From (Select SubString(日期 From 1 For 5) As New_Date, 金額 From 每日營業額.dbf)
//單獨查詢Sum(金額)
Select Sum(金額) As New_Amount From (Select SubString(日期 From 1 For 5) As New_Date, 金額 From 每日營業額.dbf) Group By New_Date
這樣再試試﹐看看問題是出在什么地方﹖ 不過﹐有一個建議﹐在建立資料庫的時候﹐盡量不要使用中文名來對資料表和資料欄位命名﹒ =========================
大病初愈﹐休養調整中...
=========================
------
忻晟 |
eric0426
一般會員 發表:2 回覆:5 積分:1 註冊:2004-09-15 發送簡訊給我 |
cashxin2002版主您好,辛苦了 依照您的建議我做以下的測試 Select SubString(date1 from 1 for 5) As New_Date , cash from Daily
子查詢是可以的 Select New_Date from (Select SubString(date1 from 1 for 5) As New_Date , cash from Daily)
或
Select * from (Select SubString(date1 from 1 for 5) As New_Date , cash from Daily)
則出現以下訊息
invalid use of keyword
Token : Select
Line Number : 2 我也覺得大大的SQL敍述是對的,是不是我用的是 DBF 的檔案
因為公司以前是用Clipper開發系統的,所以就延用這種檔案格式
是不是 BDE 沒有支援
可是其他的SQL語法又都有支援,還是我語法有打錯 ?????,真是不解
|
John Wong
初階會員 發表:1 回覆:35 積分:32 註冊:2004-09-18 發送簡訊給我 |
由於Local SQL不支援VIEWs, 所以要用另一種方法來達成你查詢.
1. 先打子查詢save為SQL檔, 例如:把以下文字儲存為文字檔X.SQL
Select SubString(date1 from 1 for 5) As New_Date , cash from Daily 2. 把X.SQL放到資料的同一位置(alias) 3. 然後可以這樣使用:
Select * From "X.SQL"
或
Select New_Date, Sum(Cash) From "X.SQL" Group By New_Date 這樣就可以完成你的工作.
|
eric0426
一般會員 發表:2 回覆:5 積分:1 註冊:2004-09-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |