SQL Server

SQL Server ポケモンのデータで学ぶSQL GROUP BY句を使ってみよう2。COUNT句、MAX句、MIN句、SUM句、AVG句を淡々と使っていきます。

今回のテーマ

こんにちは、かっぱちゃんです。

今回は下記の記事の続きです。前回はGROUP BYの基本的な使い方の学んだので、さらに便利なGROUP BYの便利な使い方を学びましょう!

こちらもCHECK

SQL Server ポケモンのデータで学ぶSQL GROUP BY句を使ってグループ化してみよう。この列は集計関数または GROUP BY 句に含まれていません。の解決方法

今回のテーマContents1 今回のテーマ2 GROUP BY句の使い方3 SELECT句に追加した項目をGROUP BY句に追加しなければならない理由4 GROUP BY句に複数項目を指定4.1 ...

続きを見る

ポケモンデータのダウンロードは下記の記事からお願いします。

こちらもCHECK

SQL Server ポケモンのデータで学ぶSQL データの準備編

今回のテーマContents1 今回のテーマ2 ポケモンデータのダウンロード3 Sql Server Management Studioでの設定4 ポケモンデータのテーブルについて5 各テーブルの属性 ...

続きを見る

GROUPBY句とセットで使用するOUNT句、MAX句、MIN句、SUM句、AVG句についてです!GROUPBY句と一緒に全部覚えてしまいましょう!!

それでは、早速やっていきましょう!

KappaChan
今回も色々なデータがほしいかっぱ!

SQLServerの他の記事はこちら

COUNT句の使い方

かっぱちゃんは下記のデータを抽出したいみたいです。

KappaChan
各タイプでグループ化出来るのは分かったけど、単タイプのポケモンが何匹ずついるのか知りたいかっぱ!

そのような時に使えるのがCOUNT句です!早速クエリを見てみましょう!!

 出力結果
タイプ1 ポケモンの数
あく 1
いわ 1
エスパー 10
かくとう 9
くさ 7
ゴースト 1
じめん 8
でんき 12
どく 10
ドラゴン 2
ノーマル 23
フェアリー 6
ほのお 16
みず 25
むし 4

各単タイプのポケモンが何匹いるか分かりましたね!!

問題:あくタイプ、いわタイプ、ゴーストタイプの1匹はなんでしょう??

良ければクエリで調べてみてくださいね!!調べずにわかったらあなたはポケモンマスターです。

余談はここまでとして、COUNT句の使い方のポイントは以下の2点です。

COUNT句についてはGROUP BY句に含めない。

()の中は基本的に何でもOK。結果は同じ

()の中は適当な数字などでも結果は同じです。試しに叩いてみます。

 出力結果
タイプ1 ポケモンの数
あく 1
いわ 1
エスパー 10
かくとう 9
くさ 7
ゴースト 1
じめん 8
でんき 12
どく 10
ドラゴン 2
ノーマル 23
フェアリー 6
ほのお 16
みず 25
むし 4

何でも大丈夫と言いましたけど、あまりにも適当な言葉すぎると、

仕事の先輩などに怒られるので、無難に*や1などにしておきましょう^^;

AS句はこの名前で出力するという意味です。良く使用するので、一緒に覚えちゃってください!

C#のエンジニアであれば、絶対買ってほしい本2選

C#の初心者にオススメ!基本はこの本で抑えよう!


Linqの使い方が沢山載っている。中級者以上の方にオススメ!

MAX句、MIN句

続けて、MAX句とMIN句です!かっぱちゃんは下記のデータがほしいようです!

KappaChan
各タイプですばやさが一番早い数値と遅い数値を抽出したいかっぱ!!

早速抽出します!

 出力結果
タイプ1 一番遅い数値 一番速い数値
あく 65 65
いわ 30 30
エスパー 130 33
かくとう 95 35
くさ 80 30
ゴースト 85 85
じめん 120 35
でんき 150 35
どく 80 25
ドラゴン 70 50
ノーマル 115 20
フェアリー 60 15
ほのお 105 20
みず 90 40
むし 85 15

すばやさが速い数値と遅い数値が同時に出力されましたね!!

MAX句、MIN句がCOUNT句と違う部分は下記の点です。

最大値(最小値)を出したい項目を()内に記載する

COUNT句のように「251匹の思い出」とか記載してはいけません!!

MAX句とMIN句は抽出したい項目名を記載してあげましょう!!

使い方を見ていて思ったことはありませんか??

数値と各タイプのポケモン名を一緒に抽出したいんだけど・・・・。

待ってください!!!まだ早いです!!というか記事が追い付かないです!!

副問合せテーブル結合の記事を書いたときに必ず載せるので待っててください;

KappaChan
ポケモン名も知りたかったかっぱ!!

SQLServerの他の記事はこちら

AVG句、SUM句

最後にAVG句とSUM句です。

基本的にMAX句とMIN句の使い方と同じです。

一緒に出しちゃいましょう!!

 出力結果
タイプ1 平均 合計
あく 65 65
いわ 30 30
エスパー 84 845
かくとう 63 568
くさ 50 355
ゴースト 85 85
じめん 61 490
でんき 90 1090
どく 51 517
ドラゴン 60 120
ノーマル 66 1537
フェアリー 34 205
ほのお 79 1266
みず 66 1659
むし 43 175

ポケモンの種族値でこんな使い方しませんよね^^;すみません^^;

AVGは各単体タイプの平均をSUMは合計を出力しています。

ノーマルタイプの単タイプの数が多かったので、合計は断トツですね!

ORDER BY句と組み合わせてみる

かっぱちゃんは思いました。

KappaChan
各単タイプが何匹か分かったから、多い順に並べたいかっぱ!

多い順に並べ替えるには何を使うんでしたっけ?そうです!ORDER BY句です。

GROUP BY句とORDER BY句を組み合わせて使ってみましょう!!

 出力結果
タイプ1 ポケモンの数
みず 25
ノーマル 23
ほのお 16
でんき 12
どく 10
エスパー 10
かくとう 9
じめん 8
くさ 7
フェアリー 6
むし 4
ドラゴン 2
あく 1
いわ 1
ゴースト 1

AS句で指定した「ポケモンの数」をORDER BYに指定してあげるだけで

ポケモンの数の順番に出来ました!!

KappaChan
水タイプの単タイプが一番多かったかっぱ!!

まとめ

今回はGROUP BY句と一緒に使用するCOUNT句、MAX句、MIN句、AVG句、SUM句を学びました。

GROUP BY句がどんどん便利になるのが伝わってくると思います!!

次の記事もGROUP BY句について学ぶので楽しみにしていてくださいね!!

KappaChan
最後までみてくれてありがとうかっぱ!

SQLServerの他の記事はこちら

プログラミング能力を上げたい方は是非オンラインのプログラミング教室も検討してみてくださいね!!

一人で独学をするよりもプロからオンラインでプログラミングを教えてもらった方が10倍は効率いいです!!

私が厳選したオススメのオンライン教室を貼っておきます!!どちら共、エンジニアとしての就職までサポートしてくれる素晴らしい教室です。キャリアなどの個別相談は無料ですよ!!

申し込みは完全無料!未経験でITエンジニアを目指したい方にオススメ!

Webエンジニアになりたい方にオススメ!個別相談は無料!

KappaChan
オンラインのプログラミング教室は本当にオススメかっぱ!!

-SQL Server

X