Код ошибки: 1055. Выражение № 2 списка SELECT отсутствует в GROUP BY - PullRequest
0 голосов
/ 10 июля 2019

Я хотел бы знать, что число 'member_seq' соответствует значению 'R_INFO.nick_name'.

Как получить данные подсчета ??

SQL

SELECT
    nick_name,
    REPORT.seq_no,
    report_type,
    report_item,
    contents,
    DATE_FORMAT(report_dt, '%Y-%m-%d %H:%i:%s') AS report_dt,
    REPORT.status,
    question,
    E_INFO.status AS game_status,
    entry_fee,
    REPORT.game_seq,
    Count(member_seq)
FROM
    REPORT
LEFT JOIN R_INFO ON
    REPORT.member_seq = R_INFO.seq_no
LEFT JOIN E_INFO ON
    REPORT.game_seq = E_INFO.seq_no
GROUP BY R_INFO.nick_name;

Ответы [ 2 ]

0 голосов
/ 11 июля 2019

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

SELECT
    nick_name,
    REPORT.seq_no,
    report_type,
    report_item,
    contents,
    DATE_FORMAT(report_dt, '%Y-%m-%d %H:%i:%s') AS report_dt,
    REPORT.status,
    question,
    E_INFO.status AS game_status,
    entry_fee,
    REPORT.game_seq,
    (SELECT COUNT(member_seq) REPORT WHERE member_seq = R_INFO.seq_no) AS count_member,
FROM
    REPORT
LEFT JOIN R_INFO ON
    REPORT.member_seq = R_INFO.seq_no
LEFT JOIN E_INFO ON
    REPORT.game_seq = E_INFO.seq_no
0 голосов
/ 10 июля 2019

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

REPORT.seq_no,
report_type,
report_item,
contents,
DATE_FORMAT(report_dt, '%Y-%m-%d %H:%i:%s') AS report_dt,
REPORT.status,
question,
E_INFO.status AS game_status,
entry_fee,
REPORT.game_seq

Запрос станет:

SELECT nick_name, Count(member_seq)
FROM REPORT
LEFT JOIN R_INFO ON REPORT.member_seq = R_INFO.seq_no
LEFT JOIN E_INFO ON REPORT.game_seq = E_INFO.seq_no
GROUP BY R_INFO.nick_name;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...