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

回答編集履歴

3

追記

2019/02/27 07:18

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -26,4 +26,28 @@
26
26
  group by bbb
27
27
  ) b
28
28
  on a.aaa=b.bbb
29
+ ```
30
+ 追記
31
+ --
32
+ ```SQL
33
+ select list.*
34
+ , (計 -(select count(*) from T_FIRST_ORDER TFO where TFO.USER_CD = '444444')) *2
35
+ from (
36
+ SELECT
37
+ SUM(CASE WHEN TM.PREFECTURE LIKE 'S%' THEN 1 ELSE 0 END) AS 北海道
38
+ ,SUM(CASE WHEN TM.PREFECTURE LIKE 'T%' THEN 1 ELSE 0 END) AS 東京
39
+ ,SUM(CASE WHEN TM.PREFECTURE LIKE 'N%' THEN 1 ELSE 0 END) AS 名古屋
40
+ ,count(*) as 計
41
+ FROM
42
+ T_FIRST_ORDER TFO
43
+ INNER JOIN T_MANAGER TM
44
+ ON TFO.ORDER_NO = TM.ORDER_NO
45
+ WHERE
46
+ TRUNC(TM.IN_DATE) <= sysdate
47
+ AND TRUNC(TM.IN_DATE) IS NOT NULL
48
+ AND(
49
+ TRUNC(TM.OUT_DATE) >= sysdate
50
+ OR TRUNC(TM.OUT_DATE) IS NULL
51
+ )
52
+ ) list
29
53
  ```

2

修正

2019/02/27 07:18

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -14,6 +14,16 @@
14
14
 
15
15
  テーブル同士の関係がああるなら
16
16
  ```SQL
17
- select (count(*) - (select count(*) from テーブルB where bbb=a.aaa)) *2
17
+ select a.aaa, (a.cnt - b.cnt)*2
18
+ from (
19
+ select aaa, count(*) cnt
18
- from テーブルA a
20
+ from テーブルA
21
+ group by aaa
22
+ ) a
23
+ inner join (
24
+ select bbb, count(*) cnt
25
+ from テーブルA
26
+ group by bbb
27
+ ) b
28
+ on a.aaa=b.bbb
19
29
  ```

1

追記

2019/02/27 05:29

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -3,4 +3,17 @@
3
3
  (select count(*) from テーブルA) - (select count(*) from テーブルB)
4
4
  ) * 2
5
5
  from dual
6
+ ```
7
+ とか
8
+ ```SQL
9
+ select (
10
+ count(*) - (select count(*) from テーブルB)
11
+ ) * 2
12
+ from テーブルA
13
+ ```
14
+
15
+ テーブル同士の関係がああるなら
16
+ ```SQL
17
+ select (count(*) - (select count(*) from テーブルB where bbb=a.aaa)) *2
18
+ from テーブルA a
6
19
  ```