MySQL COUNT()和连接的问题

时间:2010-12-14 12:31:51

标签: mysql join

我需要计算每个帐户订购了哪些类型的票证,并且只计算已经发生交易的帐户。我正在使用以下查询为每个价格执行此操作:

SELECT tickets.order_id as order_id, count(tickets.id) as count 
  FROM tickets,transactions 
  WHERE price = $price 
    AND tickets.order_id = transactions.order_id 
  GROUP BY tickets.order_id

这会得到正确的结果集,但是在有多个交易的订单中,count(tickets.id)的数量乘以该数字。我需要使用什么查询来避免此问题?我需要使用其他类型的联接吗?

1 个答案:

答案 0 :(得分:6)

使用

count (distinct tickets.id)