
重複データを除いてカウントしたい
お世話になります。
PHP+MySQLでWEBサイトを作ろうとしている者です。
どうしても自分ではわからないことがあって質問いたします。
以下ような2つのテーブルがあり、
レンタルした顧客の都道府県が
月別にカウントされるようにしたいと考えています。
テーブルA(顧客情報)
顧客名 都道府県
(name) (prefec)
Aさん 東京都
Bさん 千葉県
Cさん 神奈川県
Dさん 東京都
Eさん 千葉県
テーブルB(レンタル・レンタル品目情報)
顧客名 期間(開始月・返却月) レンタル品目
(name) (start)(end) (item)
Aさん(東京) 1月 6月 自動車
Aさん(東京) 1月 6月 オートバイ
Aさん(東京) 2月 6月 チャイルドシート
Bさん(千葉) 3月 5月 自動車
Bさん(千葉) 3月 5月 チャイルドシート
Cさん(神奈川) 1月 2月 自動車
Cさん(神奈川) 2月 3月 オートバイ
Dさん(東京) 2月 4月 自動車
Eさん(千葉) 3月 6月 オートバイ
想定する結果は
1月は
東京(1人) 千葉(0人) 神奈川(1人)
2月は
東京(2人) 千葉(0人) 神奈川(1人)
3月は
東京(2人) 千葉(2人) 神奈川(1人)
となります。
品目数であれば以下の式でカウントできるのですが、
顧客数をカウントしようとすると重複が発生して
うまく顧客数だけに結果を導くことができません。
SELECT prefec,COUNT(name) AS cnt FROM tbla
INNER JOIN tblb USING(name)
WHERE (指定月 BETWEEN start AND end)
GROUP BY prefec
参考までに上の式では
1月は
+----------+-----+
| prefec | cnt |
+----------+-----+
| 東京都 | 2 |
| 神奈川県 | 1 |
+----------+-----+
2月は
+----------+-----+
| prefec | cnt |
+----------+-----+
| 東京都 | 4 |
| 神奈川県 | 2 |
+----------+-----+
3月は
+----------+-----+
| prefec | cnt |
+----------+-----+
| 千葉県 | 3 |
| 東京都 | 4 |
| 神奈川県 | 1 |
+----------+-----+
となります。
この場合、どのような式にしたら想定する結果が導き出せるのでしょうか。
よろしくご教授をお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLサーバに対するSQL文で抽出...
-
SQLで、Join句で結合したテ...
-
【SQL】他テーブルに含まれる値...
-
テーブル名が可変の場合のクエ...
-
パススルークエリ&ACCESSテーブ...
-
Excelでしりとりを作る方法
-
既存データをINSERT文にして出...
-
SELECT INTOで一度に複数の変数...
-
オラクルのUPDATEで複数テーブル
-
truncate tableを使って複数の...
-
フラグをたてるってどういうこ...
-
CASEでBETWEEN制約
-
T-SQLで任意の箇所で強制終了す...
-
UPDATEで既存のレコードに文字...
-
SELECTした結果に行番号を求めたい
-
OracleのLONG型への insert に...
-
シーケンスを使わずに主キーを...
-
複数レコードの複数フィールド...
-
oracle シーケンスの欠番を確認...
-
Activation codeとは
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【SQL】他テーブルに含まれる値...
-
既存データをINSERT文にして出...
-
副問合せを使わずにUNIONと同様...
-
SQLで、Join句で結合したテ...
-
SQLサーバに対するSQL文で抽出...
-
テーブル名が可変の場合のクエ...
-
Accessの構成をコピーしたい
-
Excelでしりとりを作る方法
-
あってますか?SQL
-
結合したテーブルをSUMしたい
-
ADO+ODBCでテーブルに接続する...
-
ExcelのVLOOKUP関数の動作をMyS...
-
SQLです!!教えてください。あ...
-
ACCESSのVBAにてExcelに行...
-
DB2のSQLコマンドについて
-
2つのテーブルをLIKE演算子のよ...
-
親子関係があるテーブルでの抽出
-
PRIMARY KEYのコピー
-
ExcelのMatch関数のようなもの...
-
「総降水量が100mm以上になる...
おすすめ情報