0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SQL構文メモ

Posted at

はじめに

SQLを使い始めたので、備忘録として学んだことをまとめていこうと思います。

基本

項目の取得には SELECT を用います。

SELECT 取得する項目名 FROM テーブル名 ・・・・・

これが基本構文で、・・・・・の部分に色々とオプションを追加することができるので以下にまとめます。

データの絞り込み、加工

SQL文 説明
WHERE 条件式 条件式に合致するもののみ取得
LIMIT 数字 上から"数字"個だけデータを取得
ORDER BY 項目 データを"項目"に関してソートする

WHERE中の条件式には様々な演算子を用いることができ、さらにその条件式をand,orでつなぐこともできます。

(例)ENERGYが500以上のカレーのデータを3つ取得する

SELECT * FROM table1 WHERE ENERGY>=500 and NAME="カレー" LIMIT 3

を実行すると以下のようなデータが得られます。(項目名の*は全要素を表す)

DATE NAME ENERGY PRICE
20190411 カレー 530 500
20190411 カレー 700 700
20190412 カレー 660 700

データのグループ化、集計

SELECT〜のところに 関数(項目名) を入れることで集計結果を表示させることもできます。

関数名 説明
SUM(項目名) "項目"の値の総和を出力
AVG(項目名) "項目"の値の平均を出力
COUNT(項目名) "項目"の値のデータ数を出力

また、FROM〜の後に
GROUP BY 項目名 を加えると"項目"の各々の要素ごとの集計結果が得られます。

(例)日ごとの商品別総売上を取得する

SELECT DATE,NAME,SUM(PRICE) AS SALES FROM table1 GROUP BY DATE,NAME ORDER BY DATE

を実行するとこのようなデータが得られます。

DATE NAME SALES
20190411 カレー 15000
20190411 ラーメン 18000
20190412 ラーメン 20000
20190412 カレー 12000

〜型変換〜

今回分析に用いたデータの数値が文字列として保存されていたので、型変換する必要がありました。
CAST(項目名 AS 型)でその項目のデータを一括型変換できます。

SELECT SUM(CAST(PRICE AS float64)) FROM table1 ・・・ 

これでPRICEの和を得ることができました。

       
             

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?