例如,我有2个表,分别为"TABLE_ZOO"
和"TABLE_VET"
包含称为"Animals"
的同一列。
首先,我想计算两个表中的所有动物 其次,我然后想做一个总和并获得一个数值作为输出。
所以如果Zoo中的动物= 10
and VET = 4我的结果应该是14
答案 0 :(得分:0)
尝试一下
SELECT (Select Count(*) from Table_Zoo) + (Select Count(*) from Table_VET) as Total
然后根据需要在括号内设置过滤器
答案 1 :(得分:0)
您可以做的是利用子查询来获得所需的结果。
示例表:
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测试链接here。
所以我在这里基本上要做的是创建子查询,并为其赋予有意义的别名,以便我们知道哪个计数是哪个。
有关子查询here的一些基本信息。