您好,我需要帮助,获取具有相同id的两个不同表的总行数,这是我的查询
SELECT COUNT( * )
FROM correccion a,
acciones b
WHERE a.id_acp = '361838021102014'
AND b.id_acp = '361838021102014'
这个查询返回10,但是表correction有5行,表acciones有2行,应该是7,有什么想法吗?
最佳答案
你得到的答案是笛卡尔积,a中的每一行都与b中的每一行匹配,给你10(5x2)的答案。
你需要这样做:
SELECT a.a+b.b as count
FROM (
SELECT count(*) as a
from correccion
where id_acp = '361838021102014'
) a,
(
SELECT count(*) as b
from acciones
where id_acp = '361838021102014'
) b