Сравнение количества двух разных таблиц SQL - PullRequest
0 голосов
/ 05 октября 2018

У меня есть две таблицы A и B, и я пытаюсь сравнить их количество как

SELECT COUNT(*) FROM table_a WHERE day = '2018-09-27' AS A,
COUNT(*) FROM table_b WHERE day = '2018-09-27' AS B;

. Когда я делаю это в качестве промежуточного шага, я получаю сообщение об ошибке.Моя цель - получить результат как

day      table_a    table_b    difference    %difference
9/25/18    1            1             0          0
9/24/18    2            1             1          50%

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

Попробуйте это:

SELECT COALESCE(a.day, b.day) AS day
     , count_a
     , count_b
     , count_a - count_b AS difference
  FROM ( SELECT day, count(*) AS count_a FROM table_a GROUP BY day ) a
  FULL JOIN ( SELECT day, count(*) AS count_b FROM table_b GROUP BY day ) b
       ON b.day = a.day
0 голосов
/ 05 октября 2018

Простой способ сделать это

select 
    A,
    B,
    A-B as difference
From
(
select
(SELECT COUNT(*) FROM table_a WHERE day = '2018-09-27') as A,
(select COUNT(*) FROM table_b WHERE day = '2018-09-27') as B
) Res
...