回答編集履歴

4

修正

2017/09/01 11:25

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -44,9 +44,9 @@
44
44
 
45
45
  WHEN (`orderer_id`= 2) THEN 'F 社 - 店舗・店舗免税'
46
46
 
47
- WHEN (`orderer_id`= 3) THEN 'F 社 - 店舗・店舗免税'
47
+ WHEN (`orderer_id`= 3) THEN 'R 社 - 店舗・店舗免税'
48
48
 
49
- WHEN (`orderer_id`= 4) THEN 'F 社 - 店舗・店舗免税'
49
+ WHEN (`orderer_id`= 4) THEN 'C 社 - 店舗・店舗免税'
50
50
 
51
51
  END AS '発注元の会社 - 販売した場所'
52
52
 

3

修正

2017/09/01 11:25

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -1 +1,79 @@
1
+ ちょっとSQLが冗長なので、以下を提示のSQLとします。
2
+
3
+ ```SQL
4
+
5
+ SELECT
6
+
7
+ CASE ~
8
+
9
+ ,sum.`1月` ~
10
+
11
+ FROM (
12
+
13
+ SELECT
14
+
1
- 訂正中・・・・・・・・・・・
15
+ `orderer_id`
16
+
17
+ ,`point_of_sale_id`
18
+
19
+ ,SUM ~各月
20
+
21
+ FROM ~
22
+
23
+ WHERE ~
24
+
25
+ GROUP BY
26
+
27
+ orderer_id
28
+
29
+ ,point_of_sale_id
30
+
31
+ WITH ROLLUP
32
+
33
+ ) AS sum;
34
+
35
+ ```
36
+
37
+ 上記とほぼ同じ構造の以下のSQLとUNIONすれば取り敢えずはできそうですけど、冗長すぎるのでスルーして下さい。
38
+
39
+ ```SQL
40
+
41
+ SELECT
42
+
43
+ CASE
44
+
45
+ WHEN (`orderer_id`= 2) THEN 'F 社 - 店舗・店舗免税'
46
+
47
+ WHEN (`orderer_id`= 3) THEN 'F 社 - 店舗・店舗免税'
48
+
49
+ WHEN (`orderer_id`= 4) THEN 'F 社 - 店舗・店舗免税'
50
+
51
+ END AS '発注元の会社 - 販売した場所'
52
+
53
+ ,sum.`1月` ~
54
+
55
+ FROM (
56
+
57
+ SELECT
58
+
59
+ `orderer_id`
60
+
61
+ ,Null as `point_of_sale_id`
62
+
63
+ ,SUM ~各月
64
+
65
+ FROM ~
66
+
67
+ WHERE ~
68
+
69
+ and `point_of_sale_id` in (2,3)
70
+
71
+ GROUP BY
72
+
73
+ orderer_id
74
+
75
+ WITH ROLLUP
76
+
77
+ ) AS sum;
78
+
79
+ ```

2

修正

2017/09/01 11:24

投稿

sazi
sazi

スコア25195

test CHANGED
File without changes

1

訂正

2017/09/01 11:24

投稿

sazi
sazi

スコア25195

test CHANGED
@@ -1,9 +1 @@
1
- case に新たに追加すればよろしいのでは?
1
+ 訂正中・・・・・・・・・・・
2
-
3
- ※F社の場合
4
-
5
- ```SQL
6
-
7
- WHEN (`orderer_id`= 2 AND `point_of_sale_id`in(2,3)) THEN 'F 社 - 店舗・店舗免税'
8
-
9
- ```