Как сложить несколько запросов SQL вместе? - PullRequest
9 голосов
/ 13 ноября 2009

Я пытаюсь выполнить несколько запросов к нескольким таблицам - похоже на «выберите количество (*) из таблицы А, где х = 1» для таблицы.

Что я хотел бы сделать, так это получить все возвращаемые значения count (*) и объединить их в одно значение ...

Есть идеи?

Ответы [ 2 ]

14 голосов
/ 13 ноября 2009
select sum(individual_counts) from
(
  select count(*) as individual_counts from TableA where x = 1
    union all
  select count(*) from TableB where x = 2
....
) as temp_table_name

при использовании объединения обычно требуется только псевдоним при первом выборе.

8 голосов
/ 13 ноября 2009

Не уверен на 100%, что вы имеете в виду, но возможно:

SELECT (SELECT COUNT(*) FROM tableA)+(SELECT COUNT(*) FROM tableB)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...