人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

SQL(Mysql)について質問です。

例えば以下のようなテーブルがあります。

テーブル名: TEST
項目: KOUMOKU1 KOUMOKU2

KOUMOKU2には各商品の売り上げが入っており KOUMOKU1には各商品の商品名が入っています。

TESTに入っている KOUMOKU1 の中で一番多い売り上げ商品の商品名と売り上げ総額を出したいと考えているのですがいまいちやり方がわかりません。

その後2番目、3番目、4番目と上位5番目までの多い売り上げの商品の商品名と売り上げ総額を出したいのですが、お手数をおかけしますがわかるかたおりましたらよろしくお願いします。(出来れば一緒に1位から5位まで閲覧できるといいと考えています。)

●質問者: aiomock
●カテゴリ:コンピュータ インターネット
✍キーワード:MySQL SQL test いまいち
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● code_tk
●27ポイント

いまいちテーブル構造が分からないので何とも言えないのですが

こんな感じでできませんか

select

*

from

(

select

koumoku1,

sum(koumoku2) goukei

from

test

group by

koumoku1

)

order by

goukei

limit 0, 5

◎質問者からの返答

ご回答ありがとうございます。


2 ● huruyosi
●27ポイント
mysql> desc test;
+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| koumoku1 | varchar(128) | YES | | NULL | |
| koumoku2 | int(8) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> select * from test;
+----------+----------+
| koumoku1 | koumoku2 |
+----------+----------+
| PC | 100000 |
| PC | 120000 |
| PC | 130000 |
| PC | 140000 |
| PC | 160000 |
| MOUSE | 1980 |
| MOUSE | 2980 |
| MOUSE | 980 |
| MOUSE | 1500 |
| KEYBORAD | 7000 |
| MEMORY | 4300 |
| HDD | 6200 |
| CD-ROM | 50 |
+----------+----------+
13 rows in set (0.00 sec)

mysql>

こんなテーブルだとして

select
 koumoku1,
 sum(koumoku2) goukei
from test
 group by ( koumoku1)
order by goukei desc
limit 0,5;

こうかな。結果は

+----------+--------+
| koumoku1 | goukei |
+----------+--------+
| PC | 650000 |
| MOUSE | 7440 |
| KEYBORAD | 7000 |
| HDD | 6200 |
| MEMORY | 4300 |
+----------+--------+
5 rows in set (0.00 sec)

売り上げが一番多い商品だけを必要とするなら、limitを調整してください。

◎質問者からの返答

ご回答ありがとうございます。


3 ● komamitsu
●100ポイント ベストアンサー

シンプルに。

SELECT koumoku1, SUM(koumoku2) AS sum FROM test GROUP BY koumoku1 ORDER BY sum DESC LIMIT 5;
◎質問者からの返答

ご回答ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ