600 читали · 2 года назад
Как обойти ограничение в 1000 элементов для оператора IN в ORACLE
Рано или поздно, каждый специалист, работающий с базами данных ORACLE, наталкивается на ограничение максимального количества элементов для оператора IN: SELECT *   FROM  VOUCHERS WHERE CLIENT_ID IN (28, 45, 46, 102,...) В ORACLE для оператора IN в скобках можно перечислять не более 1000 элементов через запятую. Иногда этого количества может не хватать. Что делать в этом случае? Во-первых, давай рассмотрим случай когда такого большого количества может не хватать? Не каждый день составляешь запрос...
330 читали · 2 года назад
Приоритеты операторов в 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 разделяет условия во...