意外と簡単!プログラミングはこうして学ぶ

現役エンジニアの面倒を一気に解決する技術

SQLを使ってデータベースに問い合わせをすることで、さまざまな集計ができるようになります。たとえば、全売り上げのうち新潟県のものをすべて取得する、という集計をしてみましょう。考え方を分解すると、

・customer_prefecture という列には購買者の居住都道府県コードが格納されている
・15 は新潟の都道府県コード
・つまり、 customer_prefecture に 15 が入っている行をすべて取得すればいい

この集計を行うSQLは以下のようになります。

select * -- すべてのカラムを取得する
from sales -- `sales` テーブルから
where -- 条件は
customer_prefecture = 15; -- `customer_prefecture` が `15` と等しい

 

問い合わせが成功すると、このような結果が得られます(見やすいように整形しています)。

2017-02-17 11:21:49 Donut red female 50 15
2017-02-17 12:59:27 Cupcake green male 45 15

 

自然言語で手順化した集計の条件をSQLという言語で記述することでデータが集計できる、というSQLのいちばん簡単なサンプルです。

男女別の売り上げを出すには

もうちょっと実用的な集計に近い例として、 商品 Eclair の男女別の売り上げを出してみましょう。同様に考え方を記述してみると……

・product_name という列には商品名が格納されている
・customer_gender という列には購買者の性別が格納されている
・つまり product_name に Eclair が格納されている行を customer_gender 別に集計すればよい

この集計を行うSQLは以下のようになります。

select product_name, customer_gender, count(1)
from sales
where
product_name = 'Eclair'
group by customer_gender;

 

すると、以下のような結果が得られます。

Eclair female 2
Eclair male 3

 

サンプルになった表は10行なので手で数えることも可能ですが、これが100行、1000行、10000行……と増えていっても、SQLを使った集計ではほとんど何も変わりません。こういった作業をエンジニアの手を借りずにできると、お互いの仕事がスムーズに進むのは間違いありません。

次ページなにが得意か知っていると作業を効率化できる
キャリア・教育の人気記事
トピックボードAD
関連記事
  • 最新の週刊東洋経済
  • ぐんぐん伸びる子は何が違うのか?
  • トランプ派メディアの実態
  • 中原圭介の未来予想図
トレンドライブラリーAD
  • コメント
  • facebook
0/400

コメント投稿に関する規則(ガイドライン)を遵守し、内容に責任をもってご投稿ください。

アクセスランキング
  • 1時間
  • 24時間
  • 週間
  • 月間
  • シェア
トレンドウォッチAD
デザインの力で開く新たな価値観<br>プロダクトデザイナー 柴田文江

オムロンの体温計「けんおんくん」やコンビのベビー用品。暮らしに関わるプロダクトのあり方と、身体性を反映した柔らかな造形を追求してきた柴田氏の作品だ。女性初のグッドデザイン賞審査委員長への歩み、そして今考えていることとは。