質問編集履歴
2
sql
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,39 +1,4 @@
|
|
1
1
|
年月ごとの総数を求めたかったのですが、GROUP BYを利用すると,まとめた総数からさらに条件をつけて絞った条件総数がわからず困っています。
|
2
2
|
```
|
3
3
|
SELECT DATE_FORMAT(rest_date, '%Y-%m') AS time, COUNT(*) AS count FROM res GROUP BY DATE_FORMAT(rest_date, '%Y%m');
|
4
|
-
```
|
4
|
+
```
|
5
|
-
取得したい項目は
|
6
|
-
年月、総数、総数のうちログインしているもの(ログインの有無はnullか否か)、同じ年月でfixテーブルにある件数
|
7
|
-
を取得したいのですが、sqlで行う場合まとめて取得できますでしょうか?
|
8
|
-
|
9
|
-
両方ともdbの構造は同じでmysqlです
|
10
|
-
```
|
11
|
-
db:fix
|
12
|
-
カラム:rest_date(datetime),id(int),login_flag(int)
|
13
|
-
db:res
|
14
|
-
カラム:rest_date(datetime),id(int),login_flag(int)
|
15
|
-
|
16
|
-
```
|
17
|
-
resメインテーブル
|
18
|
-
|rest_date|id|login_flag|
|
19
|
-
|:--|:--:|--:|
|
20
|
-
|2017−04−1|0001|1|
|
21
|
-
|2017−04−1|null|1|
|
22
|
-
|2017−05−1|null|null|
|
23
|
-
|2017−06−1|0003|null|
|
24
|
-
|2017−07−1|0004|1|
|
25
|
-
|2017−07−1|0005|1|
|
26
|
-
|
27
|
-
fix予備テーブル
|
28
|
-
|rest_date|id|login_flag|
|
29
|
-
|:--|:--:|--:|
|
30
|
-
|2017−04−1|0001|1|
|
31
|
-
|2017−06−1|0004|1|
|
32
|
-
|
33
|
-
抽出結果
|
34
|
-
|time|総数|ログイン総数|予備テーブル総数|
|
35
|
-
|:--|:--:|--:|
|
36
|
-
|2017−04|2|1|1|
|
37
|
-
|2017−05|1|0|0|
|
38
|
-
|2017−06|1|1|1|
|
39
|
-
|2017−07|1|2|0|
|
1
細く
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,4 +13,27 @@
|
|
13
13
|
db:res
|
14
14
|
カラム:rest_date(datetime),id(int),login_flag(int)
|
15
15
|
|
16
|
-
```
|
16
|
+
```
|
17
|
+
resメインテーブル
|
18
|
+
|rest_date|id|login_flag|
|
19
|
+
|:--|:--:|--:|
|
20
|
+
|2017−04−1|0001|1|
|
21
|
+
|2017−04−1|null|1|
|
22
|
+
|2017−05−1|null|null|
|
23
|
+
|2017−06−1|0003|null|
|
24
|
+
|2017−07−1|0004|1|
|
25
|
+
|2017−07−1|0005|1|
|
26
|
+
|
27
|
+
fix予備テーブル
|
28
|
+
|rest_date|id|login_flag|
|
29
|
+
|:--|:--:|--:|
|
30
|
+
|2017−04−1|0001|1|
|
31
|
+
|2017−06−1|0004|1|
|
32
|
+
|
33
|
+
抽出結果
|
34
|
+
|time|総数|ログイン総数|予備テーブル総数|
|
35
|
+
|:--|:--:|--:|
|
36
|
+
|2017−04|2|1|1|
|
37
|
+
|2017−05|1|0|0|
|
38
|
+
|2017−06|1|1|1|
|
39
|
+
|2017−07|1|2|0|
|