Страница 1 из 1

Подзапрос с count, правильно создать запрос - MySQL

Добавлено: 2018.05.07, 17:24
kapkapiton
Добрый день, помогите пожайлуста правильно составить запрос, требуется вывести пользователей с их данными по конкурсу, которые не засветились в конкурсе повторно, то есть у них только один ip в таблице конкурса - competition.

Составляю такой запрос

Код: Выделить всё

SELECT u.user_email, c* 
FROM competition c 
LEFT JOIN users u ON c.user_id = u.user_id 
WHERE (SELECT COUNT(*) FROM competition WHERE ip = competition.ip) < 2
В ответ выводится пустой ответ, хотя должны были исключиться только двое пользователей, как правильно составить запрос с count?

Re: Подзапрос с count, правильно создать запрос - MySQL

Добавлено: 2018.05.07, 19:01
zelenin

Код: Выделить всё

select
    user.*,
    competition.*
from user
left join competition on competition.user_id = user.id

where competition.user_id in (
    select user_id
    from competition
    group by ip
    having count(user_id) == 1
)

Re: Подзапрос с count, правильно создать запрос - MySQL

Добавлено: 2018.05.08, 09:12
vitalik1183

Код: Выделить всё

having count(user_id) == 1
мм?

Re: Подзапрос с count, правильно создать запрос - MySQL

Добавлено: 2018.05.14, 12:47
kapkapiton
Благодарю за ответы ;)