Я выполняю запрос, чтобы получить от всех клиентов мои данные. Из-за нового закона не все клиенты хранят адрес, поэтому у меня есть некоторые пустые значения. Это работает хорошо, если я запускаю «основной» запрос, извлекая всех клиентов, оставшихся в другой таблице. Когда я пытаюсь добавить поисковое слово, оно все равно дает мне весь набор, а не фильтрует его по поисковому запросу. Что я сделал не так?
Я попытался переписать запрос без левого соединения и просто WHERE c.customers_id = a.customers_id, но поскольку a.customers_id не всегда заполнен, я получаю намного меньше клиентов, чем у меня
select
c.customers_id, c.customers_firstname, c.customers_lastname, c.customers_email_address, c.customers_account_validated, c.customers_payment_period, a.entry_country_id, a.entry_company
from customers c
left join address_book a on c.customers_id = a.customers_id
and c.customers_default_address_id = a.address_book_id
and (c.customers_lastname like '%adolfs%'
or c.customers_firstname like '%adolfs%'
or c.customers_email_address like '%adolfs%'
or a.entry_company like '%adolfs%' or c.customers_id = 'adolfs')
order by c.customers_id DESC
Я ожидал, что все клиенты с именем "adolfs" будут указывать имя, фамилию, название компании в адресе электронной почты