Проблемы с MySQL COUNT () и соединениями - PullRequest
0 голосов
/ 14 декабря 2010

Мне нужно узнать, какие типы билетов были заказаны для каждой учетной записи, и только для учетных записей, в которых была совершена транзакция.Я делаю это с помощью следующего запроса для каждой цены:

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 Ответ

6 голосов
/ 14 декабря 2010

использование

count (distinct tickets.id)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...