MySQL

【mysql】2つの条件でまとめて数値を合計したい【初心者向け】

例えば家計簿みたいなWebサービスをつくりたいと思ったら、

『データベース』をうまく使う必要がでてきます。

例えば kakeibo というテーブルで、こんな内容になっていたとして。

いくつかのパターンで『SQL』文をつくってみたいと思います。

Sponsored link

mysql でとりあえず全件表示

で全件表示されます。

FROM で 対象のテーブルを指定して、
SELECT で 表示させる行を決定します。

参考記事

Sponsored link

mysql 項目ごとに合計値を出す

例えば 食費の合計や交通費の合計をだしたいと思ったら、SQL文はこうなります。

出力結果はこう。

SELECTは一旦おいておいて、

FROMでテーブルを指定して、

『GROUP BY』 で まとめたい列を指定します。

今回はtypeという列に食費や交通費を書いているので、 『GROUP BY type』 になります。

最後にSELECTで表示させる行を決めるのですが、

もしこう書いちゃうと、

こんな出力結果になります。

アオキ
交通費、雑費、食費とtypeはまとまっているのに、金額が足されていない・・

金額を合計して表示するために、sum(price) としているんですね。

なので、sum と GROUP BY はセットで使うことが多いのかなと思います。

Sponsored link

mysql 2つの条件でまとめて数値を合計したい

先ほどは交通費、雑費、食費などのtypeでまとめたのですが、
日付ごとに出力したいと思ってこう書いたとすると、

こんな出力結果になります。

アオキ
なんか出力結果が変。。3月2日消えとるし・・

なぜダメかというと、

GROUP BY で、 type しかまとめていないので、

日付の部分は無視したような状態になってるんですね。

それぞれの日付でもまとめたい場合は、『GROUP BY』 を2つ書けばOKです。

せっかくなので日付順で並び替えてみます。

並び替えは『ORDER BY』 ですね。

アオキ
うん、完璧ですな。

『GROUP BY』 で2つの条件でまとめるのをエクセルでやろうとすると、

なかなか手間だったりするんですよね。

アオキ
VLOOPUP関数とか使えばいけるかもですがちょっとめんどい・・

例えば2万行のデータだったりすると関数つくるのだけでも大変だったりします。

『mysql』などのデータベースで、複数のグループをまとめることに慣れてきたら、

いろんな分析だったり見せ方ができるようになってくるので、

興味があればぜひやってみてもらえればなと思います。

アオキ
最初はわけわからんかったのですが、何度もやっていると慣れてきます。Web系やるならぜひ使いこなしましょ〜

『mysql』関係ではこんな記事も読まれています。

1. 【mysql】SQL文のつくり方のコツ〜ちょっとずつ組み立てる〜【初心者向け】

2. 【mysql】2つの条件でまとめて数値を合計したい【初心者向け】

3. 検索システムのデータベースの作り方や考え方を8ステップで書き連ねてみる

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


Sponsored link

関連記事

  1. MySQL

    【mysql】SQL文のつくり方のコツ〜ちょっとずつ組み立てる〜【初心者向け】

    インターネットに繋いで使えるサービスは山ほどありますが、ToDo…

  2. MySQL

    検索システムのデータベースの作り方や考え方を8ステップで書き連ねてみる

    先日とある『不動産検索システム』をつくりまして、『不動産検索シ…

Sponsored link

最近の記事

Sponsored link
  1. docker初心者向けdocker-composeからやったほうがいいかもよ

    ツール

    【Docker】初心者はdocker-composeから始めた方がいいかもしれな…
  2. 検索システム

    新しいホテルを探すサービスをつくってみました【楽天トラベルAPI】【条件付】
  3. 検索システム

    【検索システム】をつくってみた【実際にログインしてさわれます】
  4. MySQL

    検索システムのデータベースの作り方や考え方を8ステップで書き連ねてみる
  5. IoT

    【Arduino】ラジコンをつくってみた 〜今ドキのプログラミングの覚え方
PAGE TOP