ParadoxのTableを集計したいのですが、
SQL文の書き方を忘れてしまい困っています。
日付型で金額を集計したいです。
例
入金日,金額
2011/11/01,1000
2011/11/02,1000
2011/12/01,1000
結果
2011/11 ,2000
2011/12 ,1000
または
11,2000
12,1000
とするには、
どのようなSQL文にするとよろしいのでしょうか?
select
substring(入金日,1,7),
sum(金額) ]
.
.
group by substring(入金日,1,7)
じゃダメなのかな?
こんにちは。
まず、*.db と同じ場所にテキストファイルを置きます。
名前は "NYUKIN_VIEW.SQL" とします。
[NYUKIN_VIEW.SQL]
Select
EXTRACT(YEAR FROM 入金日) AS YY,
EXTRACT(MONTH FROM 入金日) AS MM,
金額
FROM
"入金.DB"
そして、以下の SQL を実行します。
Select
YY as 年,
MM as 月,
SUM(金額) as 月計
From
"NYUKIN_VIEW.SQL"
Group By
YY, MM
Order By
YY, MM
[結果]
年 月 月計
---- -- ----
2011 11 2000
2011 12 1000
# Paradox の SQL は "%ProgramFiles%\Common Files\Borland Shared\BDE" にある、
# LOCALSQL.HLP で確認できます。
*.SQL ファイルを使う方法は、
LOCALSQL.HLP の "ローカル SQL の VIEW" に詳細があります。
遅くなりましてすみません。
テスト様、DEKO様 ありがとうございます。
substringの機能が効かないのかSQLを実行すると、
キーワードの無効です。とエラーがでます。
”,1,7)”
*.SQLを使用する方法を試したところ成功しました!
ありがとうございました。
Paradox...というか、Local SQL の SubString() の構文は、
SUBSTRING(文字列フィールド FROM 開始位置 FOR 長さ)
です。
日付型からだとさらに CAST() を使う必要があると思います。
また、Local SQL では Group By 句に SubString() は使えません。
# これまた LOCALSQL.HLP に記述があります。
ツイート | ![]() |