teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

修正

2017/09/01 11:25

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -21,8 +21,8 @@
21
21
  SELECT
22
22
  CASE
23
23
  WHEN (`orderer_id`= 2) THEN 'F 社 - 店舗・店舗免税'
24
- WHEN (`orderer_id`= 3) THEN 'F 社 - 店舗・店舗免税'
24
+ WHEN (`orderer_id`= 3) THEN 'R 社 - 店舗・店舗免税'
25
- WHEN (`orderer_id`= 4) THEN 'F 社 - 店舗・店舗免税'
25
+ WHEN (`orderer_id`= 4) THEN 'C 社 - 店舗・店舗免税'
26
26
  END AS '発注元の会社 - 販売した場所'
27
27
  ,sum.`1月` ~
28
28
  FROM (

3

修正

2017/09/01 11:25

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,1 +1,40 @@
1
+ ちょっとSQLが冗長なので、以下を提示のSQLとします。
2
+ ```SQL
3
+ SELECT
4
+ CASE ~
5
+ ,sum.`1月` ~
6
+ FROM (
7
+ SELECT
1
- 訂正中・・・・・・・・・・・
8
+ `orderer_id`
9
+ ,`point_of_sale_id`
10
+ ,SUM ~各月
11
+ FROM ~
12
+ WHERE ~
13
+ GROUP BY
14
+ orderer_id
15
+ ,point_of_sale_id
16
+ WITH ROLLUP
17
+ ) AS sum;
18
+ ```
19
+ 上記とほぼ同じ構造の以下のSQLとUNIONすれば取り敢えずはできそうですけど、冗長すぎるのでスルーして下さい。
20
+ ```SQL
21
+ SELECT
22
+ CASE
23
+ WHEN (`orderer_id`= 2) THEN 'F 社 - 店舗・店舗免税'
24
+ WHEN (`orderer_id`= 3) THEN 'F 社 - 店舗・店舗免税'
25
+ WHEN (`orderer_id`= 4) THEN 'F 社 - 店舗・店舗免税'
26
+ END AS '発注元の会社 - 販売した場所'
27
+ ,sum.`1月` ~
28
+ FROM (
29
+ SELECT
30
+ `orderer_id`
31
+ ,Null as `point_of_sale_id`
32
+ ,SUM ~各月
33
+ FROM ~
34
+ WHERE ~
35
+ and `point_of_sale_id` in (2,3)
36
+ GROUP BY
37
+ orderer_id
38
+ WITH ROLLUP
39
+ ) AS sum;
40
+ ```

2

修正

2017/09/01 11:24

投稿

sazi
sazi

スコア25430

answer CHANGED
File without changes

1

訂正

2017/09/01 11:24

投稿

sazi
sazi

スコア25430

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