С SQL можно создавать, изменять и удалять таблицы, индексы и другие объекты базы данных, а также выполнять запросы.
⚡️ Почему OR в SQL — это скрытый убийца производительности
На первый взгляд, оператор OR в SQL кажется безобидным. Нужен фильтр по нескольким условиям? Просто напиши: select count(*)
from application
where submitter_id = :user_id
or reviewer_id = :user_id; Но в реальности такой запрос может оказаться в 100 раз медленнее, чем переписанный на UNION или два подзапроса. И это не баг, а фундаментальная особенность работы планировщиков запросов. Дело в том, что:
⚡️ AND уменьшает количество данных, сузив выборку.
💥 OR расширяет набор данных, заставляя движок либо делать дорогое объединение, либо идти в полный скан таблицы...