Я делаю запрос для своей базы данных, которая содержит таблицу информации о клиентах и таблицу платежей.Мне нужно отслеживать ежемесячные платежи и связываться с теми, кто не заплатил до конца каждого месяца.Я работаю над запросом, чтобы вывести список всех, кто не заплатил в течение месяца.Люди могут платить за один месяц или несколько месяцев.В моей таблице платежей есть строковое поле, в котором я записываю, за какой месяц был оплачен.Значение может быть, например, «июнь» или «июнь, июль, август». Для моего запроса я хочу иметь возможность ввести определенный месяц и видеть, кто не заплатил.
У меня естьсделал запрос для запроса, в котором я могу ввести любой месяц, и он будет возвращать платежи за другие месяцы или когда кто-то вообще не платил, но я не могу вернуть те, чьи значения не совсем совпадают с моими данными "Июнь "или любой другой месяц.Я использую подобную функцию здесь.Вот мой код:
SELECT Clients.[Player ID], Clients.[Player Name], Clients.[Contact Number], Payment.[Payment Amount], Payment.[Payment Month]
FROM Clients INNER JOIN Payment ON Clients.[Player ID] = Payment. [Player ID]
WHERE (((Payment.[Payment Month]) Not Like [Enter the month:])) OR (((Payment.[Payment Month]) Is Null));
Когда я запускаю запрос для ввода «Июнь», он возвращает людей, которые сделали «Июнь, Июль, Август» как неоплаченные за май месяц.Я знаю, что это потому, что «май, июнь, июль» отличается от входного значения «май».Есть ли способ, которым я могу исключить эти платежи из списка неоплаченных?Я не хочу, чтобы запрос возвращал какие-либо значения, которые могут включать входной месяц.Я думал, что мне может понадобиться использовать подстановочный знак, но я не был уверен, как именно поместить эти критерии в запрос, или мне нужно написать какой-либо дополнительный код SQL для него.