Создание эффективных инструкций SQL в Oracle Responsys

  • Если в запросе используется оператор ANDs (пример: select * from tableName where a=1 AND b=2 AND c=3), поместите самое эффективное условие (условие, которое возвращает наименьшее количество строк) последним, второе по эффективности условие - предпоследним и т. д.
  • Если в запросе используется оператор AND (пример: select * from tableName where a=1 AND b=2 AND c=3), поместите самое эффективное условие (условие, которое возвращает наименьшее количество строк) последним, второе по эффективности условие - предпоследним и т. д.
  • При поиске поля для любого значения, кроме NULL, если поле имеет индекс, созданный в Oracle Responsys, используйте в запросе функцию upper(), чтобы воспользоваться преимуществом индекса. (В Oracle Responsys используются индексы на основе функций, в которых ключ поиска полностью преобразуется в верхний регистр с помощью функции upper().

    Пример. (Поле Email является ключом извлечения данных таблицы и поэтому индексируется автоматически.)

    select * from table where upper(Email)='JOHN.SMITH@XYZ.COM'
    

См. также