目标
我正在像BRASILFOODS这样的每个客户端的主机名列上执行计数器,我想要做的一件事是与BRASILFOODS计数并排。
查询
SELECT COUNT(*) hostname, customer
FROM tb_get_gap
LEFT JOIN tb_get_customers
ON tb_get_gap.customer = tb_get_customers.cust_cmdb WHERE tb_get_customers.customer = 'BRASILFOODS' and tb_get_gap.exception = 'NO';
输出
>[Error] Script lines: 1-4 --------------------------
ERROR: column reference "customer" is ambiguous
Line: 1
答案 0 :(得分:3)
SELECT
tgg.customer, -- 1
COUNT(*)
FROM tb_get_gap tgg
LEFT JOIN tb_get_customers tgc
ON tgg.customer = tgc.cust_cmdb
WHERE tgc.customer = 'BRASILFOODS'
AND tgg.exception = 'NO'
GROUP BY tgg.customer -- 2
customer
的列。因此,您可以通过添加表标识符或别名来指定要显示的两者。COUNT(*)
)。看来您想通过customer
来计数。因此,在这种情况下,您需要按此列分组。答案 1 :(得分:1)
您要获取哪个客户专栏?
tb_get_gap.customer
还是tb_get_customers.customer
?
这就是为什么您得到模棱两可的参考错误的原因。您需要指出要从哪个表获取。