MySQL запрос, чтобы объединить таблицы и выбрать те, которые не существуют? - PullRequest
0 голосов
/ 16 января 2019

Привет, у меня есть база данных, как это имеет 2 таблицы Пользователи и платежи

таблица платежей имеет список месяцев и лет, когда пользователь заплатил, как, если пользователь заплатил за месяц, январь 2019 года, платежи базы данных имеют месяц как 1 и год, как 2019, и пользователь должен платить каждый месяц, и мне нужно выберите список всех пользователей, которые не платили за месяц.

сейчас я делаю это так

select name,month,year from users u left join payments p where 
 ( (u.usid=p.usid and subscribed='1') and 
(year ='2018' and month NOT IN ='1,2,3,4,5,6,7,8,9,10,11,12') ) 

Thankx

Это может быть немного просто сделать, но я не могу понять это.

1 Ответ

0 голосов
/ 19 января 2019

Попробуйте это,

Получить всех пользователей, которые не заплатили за месяцы в 2018 году.

SELECT * FROM `user` u left join payments p on u.usid = p.usid where usid not in (select usid from payments where `year` = 2018);

OR

SELECT * FROM `user` where usid not in (select usid from payments where `year` = 2018);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...