Мне нужно СЧИТАТЬ несколько строк из нескольких таблиц.Прежде чем я смогу сделать несколько COUNT, мне придется выбрать.Проблема здесь в том, что мне нужно присоединиться к некоторым значениям, чтобы получить правильный результат.
SELECT
sponsor.Name As SponsorName,
COUNT(participants.[Table]) AS ParticipantCount,
( SELECT
COUNT(guestcards.[Table])
FROM
guestcards
WHERE
guestcards.EventID = @EventID
AND
guestcards.[Table] = @Table
AND
guestcards.SponsorID = participants.SponsorID
-- Here lies the problem.
-- I will need to check up on another value to ensure I get the right rows, but participants.SponsorID is not here because of no join :-(
) AS GuestParticipantCount
FROM
participants
LEFT JOIN
sponsor
ON
sponsor.ID = participants.SponsorID
WHERE
participants.EventID = @EventID
AND
participants.[Table] = @Table
GROUP BY
sponsor.Name
В таблице гостевых карточек хранится: спонсор, вечерняя, имя таблицы
В таблице участников хранится: спонсор, вечерняя, имя таблицы
В таблице спонсора хранится: идентификатор, имя
Мне нужно посчитать, сколько «Участников» существует и сколько «Гостевых карт» в конкретном событии.У этих участников есть стол (за которым они должны сидеть) и гостевые карты.Мне нужно проверить, если это тот же «стол», где они сидят.
Итак, мне нужно посчитать, сколько людей сидит за столом «А1» или за столом «А2» и т. Д.
Результат, который я получаю, выглядит так:
«У Спонсора Имени 5 участников и 3 гостевые карты. Они сидят на А1»
Надеюсь, я все прояснил