Я хотел бы знать для моего сценария, если есть 2 таблицы:
работник:
id, city, job_level
фильтры:
city, job_level, some_val
У меня есть запрос вроде:
SELECT *
FROM employee e
WHERE NOT EXISTS(SELECT 1
FROM filters f
WHERE e.city = COALESCE(f.city, e.city)
AND ( f.job_level IS NULL
OR e.job_level = f.job_level ))
Если вы видите, что условия для city и job_level работают одинаково. Тем не менее, я хотел бы знать, какой из них будет лучше. Кроме того, я хотел бы знать рекомендуемые индексы для этих таблиц для такого запроса.