Создание и печать Count в таблице SQL

0

Я пытаюсь распечатать счет как дополнительный столбец со следующим запросом:

SELECT Member.memberID, Member.lastname, Member.firstname
FROM CurrentLoan 
    JOIN Member ON CurrentLoan.memberID = Member.memberID
WHERE CurrentLoan.memberID = Member.memberID
GROUP BY Member.lastname
HAVING COUNT( Member.memberID) ;

Прямо сейчас, я настроил там, где запрос принимает идентификатор memberID из таблицы CurrentLoan, получает соответствующее имя и фамилию из таблицы Member и перечисляет их, но мне нужно получить количество каждого члена (как и сколько книги, которые взял член) Какие-нибудь советы?

  • 0
    Вы используете MySQL или Postgresql?
Теги:

1 ответ

1
Лучший ответ

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

SELECT
    m.memberID,
    m.lastname,
    m.firstname,
    COUNT(c.memberID) AS book_cnt
FROM Member m
LEFT JOIN CurrentLoan c
    ON m.memberID = c.memberID
GROUP BY
    m.memberID;

Выражение count COUNT(c.memberID) важно, поскольку оно подсчитывает записи из таблицы соединения CurrentLoan. В крайнем случае, когда член не имеет извлеченных книг, это выражение счетчика будет сообщать об 0. Также обратите внимание, что мы оставили здесь присоединиться, чтобы убедиться, что у нас нет ни одного члена, у которого на данный момент нет книг.

  • 0
    Я опробовал ваше решение, но в строке COUNT # 1064, похоже, есть проблема с синтаксисом - в синтаксисе SQL возникла ошибка; обратитесь к руководству, соответствующему вашей версии сервера MariaDB, чтобы узнать правильный синтаксис для использования рядом с «COUNT (c.memberID) AS book_cnt FROM Member m ВЛЕВО ПРИСОЕДИНЯЕТСЯ CurrentLoan c ON m». в строке 5. Есть предложения по этому поводу?
  • 0
    @JaneDean Извините, в предложении select отсутствовала запятая после m.firstname . Попробуй обновление.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню