计算postgresql中许多连接的结果

时间:2013-06-16 14:34:22

标签: database postgresql

我有这个问题:

    select count(*) 
            from seller s 
            left join product pr on s.id = pr.seller_id 
            left join special_price_discount spd on pr.id = spd.product_id 
            left join product___tag pt on pr.id = pt.product_id 
            left join tag t on pt.tag_id = t.id 
            left join product___size ps on ps.product_id = pr.id 

在db我有两个产品,我如何得到正确的计数结果,因为现在我得到19而不是2。

我尝试添加'group by pr.id',但随后查询返回2个结果,'distinct'我也有19个。 或者有太多的联接,我无法获得适当的结果? 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

你可以做到,例如select count(distinct product.*)

或者更简单地说,如果计算产品是你真正想要的:

select count(*) from products;