SQLの基礎 2

今日もSQLの基礎を勉強していきます!

 

・DISTINCT:重複を省いたデータを取得できる

例:

 

SELECT DISTINCT(カラム名)

FROM テーブル名;

 

四則演算  「足す(+)、引く(-)、かける(*)、割る(/)」

 

SELECT カラム名 * 1.08

FROM テーブル名;

 

とすることで計算後のデータの取得をすることができる

 

・SUM:カラムのデータの合計を計算できる

 

例:

SELECT SUM(price)

FROM purchases

WHERE character_name = “toshi”;

 

AVG:カラムのデータの平均を計算できる

 

例:

SELECT AVG(price)

FROM purchases

WHERE character_name = “pata”;

 

・COUNT:指定したカラムの合計を計算できる

 

例:

SELECT COUNT(name)

FROM purchases;

 

SELECT COUNT(*)

FROM purchases

WHERE character_name = “yoshiki”;

 

*は全てのカラムを指定している

 

・MAX:カラムの中から最大のデータを取得する

・MIN:カラムの中から最小のデータを取得する

 

例:

SELECT MAX(price)

FROM purchases

WHERE character_name = “hide”;

 

・GROUP BY:データをグループ化できる

 

例:

SELECT SUM(price), purchased_at

FROM purchases

GROUP BY purchased_at

;

この記述で日付ごとのpriceの合計のデータをグループ化できる

 

,で区切ることで複数のカラムのグループ化もできる

例:

SELECT SUM(price), purchased_at, character_name

FROM purchases

GROUP BY purchased_at, character_name

;

 

・WHEREを追加することでより細かい条件でデータをグループ化できる

 

例:

SELECT SUM(price), purchased_at, character_name

FROM purchases

WHERE category = "食費"

GROUP BY purchased_at, character_name;

 

・HAVING:GROUP BYでグループ化したデータに条件をつけて更に絞り込むことができる

 

例:

SELECT SUM(price), purchased_at, character_name

FROM purchases

GROUP BY purchased_at, character_name

HAVING SUM(price) > 3000

;

 

条件が複雑になってくると途端に難しく感じますね

現状他の言語よりは理解しやすいと思います

ただ忘れそう、、、