- PR -

SQL - GROUP BY 集計

1
投稿者投稿内容
未記入
会議室デビュー日: 2006/02/07
投稿数: 5
投稿日時: 2006-02-07 19:43
下記の例題のIDの上2桁で集計を取りたいのですが SQL構文がわかりません。
GROUP BY を使用しなくてもいいのですが、なにか簡単な方法があったら教えてください。よろしくお願いします。

ID      TOTAL
-----------------------
1000       5
1002       3
1132       2
1100       8
1154       7
1200       6



ID      TOTAL
-----------------------
10       8
11       17
12       6  
ゆっきー
会議室デビュー日: 2005/09/21
投稿数: 10
投稿日時: 2006-02-07 20:18
これではほしい答えになってないですよね・・・きっと・・・

CREATE TABLE #AAA (ID1 CHAR(4), TOTAL INT)

INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1000, 5 )
INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1002, 3 )
INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1132, 2 )
INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1100, 8 )
INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1154, 7 )
INSERT INTO #AAA (ID1, TOTAL) VALUES ( 1200, 6 )

SELECT SUBSTRING(ID1,1,2), SUM(TOTAL)
FROM #AAA
GROUP BY SUBSTRING(ID1,1,2)

--- 実行結果 ---

10 8
11 17
12 6

(3 件処理されました)

未記入
会議室デビュー日: 2006/02/07
投稿数: 5
投稿日時: 2006-02-08 08:10
早速回答頂きありがとうございます。
ID1ですが、CHARではなくVARCHARになっていたらどのようにすればいいでしょうか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-08 08:53
引用:

未記入さんの書き込み (2006-02-08 08:10) より:

ID1ですが、CHARではなくVARCHARになっていたらどのようにすればいいでしょうか?


とりあえずやってみればいいのに。(^-^;)

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ほまらら
ベテラン
会議室デビュー日: 2005/10/19
投稿数: 54
投稿日時: 2006-02-08 08:59
SELECT (ID :: INTEGER)/100 AS ID,SUM(TOTAL :: INTEGER) AS TOTAL FROM テーブル名 GROUP BY ID ORDER BY ID;
じゃだめですか?
未記入
会議室デビュー日: 2006/02/07
投稿数: 5
投稿日時: 2006-02-08 11:16
ご協力ありがとうございました。
Substraで出来ました。

まだまだ初心者で分からないことがたくさんあり 
こらからもいろいろと質問させていただくことになると
思いますが よろしくお願い致します。
ぷさいくろう
ぬし
会議室デビュー日: 2006/08/30
投稿数: 1034
投稿日時: 2006-10-05 22:44
ID / 100
でグループ化
まあデータ型によりけり
1

スキルアップ/キャリアアップ(JOB@IT)