Как мне сделать подсчет из 2 разных таблиц, а затем сложить их обе для общей суммы? - PullRequest
0 голосов
/ 08 февраля 2019

Скажем, например, у меня есть 2 таблицы с именем "TABLE_ZOO" AND "TABLE_VET", содержащие один и тот же столбец с именем "Animals".

Во-первых, я хочу подсчитать всех животных в обеих таблицах. Во-вторых, я затем хочу сделатьсумма и получить числовое значение в качестве выходного.

, поэтому, если животные в зоопарке = 10

и VET = 4 Мой результат должен сказать 14

Ответы [ 2 ]

0 голосов
/ 08 февраля 2019

Что вы можете сделать, это использовать подзапросы , чтобы получить желаемый результат.

Пример таблицы:

CREATE TABLE TABLE_ZOO(id int(11), animal varchar(100));
CREATE TABLE TABLE_VET(id int(11), animal varchar(100));

INSERT INTO TABLE_ZOO VALUES(1, 'Lion');
INSERT INTO TABLE_ZOO VALUES(2, 'Zebra');
INSERT INTO TABLE_ZOO VALUES(3, 'Penguin');
INSERT INTO TABLE_ZOO VALUES(4, 'Polar Bear');
INSERT INTO TABLE_ZOO VALUES(5, 'Dolphin');
INSERT INTO TABLE_ZOO VALUES(6, 'Shark');
INSERT INTO TABLE_ZOO VALUES(7, 'Cheeta');
INSERT INTO TABLE_ZOO VALUES(8, 'Panda');
INSERT INTO TABLE_ZOO VALUES(9, 'Monkey');
INSERT INTO TABLE_ZOO VALUES(10, 'Gorilla');

INSERT INTO TABLE_VET VALUES(1, 'Cat');
INSERT INTO TABLE_VET VALUES(2, 'Dog');
INSERT INTO TABLE_VET VALUES(3, 'Hamster');
INSERT INTO TABLE_VET VALUES(4, 'Fish');

Пример SQL:

SELECT
(SELECT COUNT(id)
 FROM TABLE_ZOO) as ZOO_COUNT,
(SELECT COUNT(id)
 FROM TABLE_VET) as VET_COUNT,
((SELECT COUNT(id)
  FROM TABLE_ZOO))+
((SELECT COUNT(id)
  FROM TABLE_VET)) as TOTAL_COUNT
FROM TABLE_ZOO
LIMIT 1;

Вывод:

SQL Test

Ссылка на тест SQL здесь .

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

Некоторая базовая информация о подзапросах здесь .

0 голосов
/ 08 февраля 2019

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

SELECT (Select Count(*) from Table_Zoo) + (Select Count(*) from Table_VET) as Total

Затем установите фильтры в соответствии с тем, что вам нужно внутри скобок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...