Практический курс по SQL для начинающих - #1 Введение в PostgreSQL
Приоритеты операторов в SQL запросах
Всем привет, друзья!
Как вы думаете, какие строки будут отобраны в результате следующего запроса: SELECT *
FROM VOUCHERS
WHERE CLIENT_ID = 1
AND DOC_TYPE = 2
OR FILIAL_ID = 3 те, где CLIENT_ID = 1 и ещё такие строки, где либо DOC_TYPE = 2 либо FILIAL_ID = 3 ИЛИ, ВСЁ ЖЕ, те, где CLIENT_ID = 1 и одновременно в столбце DOC_TYPE = 2 и ещё такие строки, где FILIAL_ID = 3 и не важно какой CLIENT_ID и DOC_TYPE? Здесь в силу вступает правило приоритета операторов. OR разделяет условия во...
Использование хинтов в SQL запросах
Выполняя любую команду SQL, каждая СУБД старается выполнить её максимально эффективно. В каждой СУБД есть «оптимизатор», то есть механизм, принимающий решение как команда будет выполнена максимально эффективным образом. Строится план. Мы можем влиять на план выполнения запроса с помощью подсказок (хинтов), оставляя их прямо в SQL-коде. Если на одной из таблиц, участвующих в SQL-запросе есть индекс для какого-то столбца, значения которого используются во WHERE или в ON, то не обязательно, что он будет...