Scrittura di istruzioni SQL efficaci in Oracle Responsys

  • Quando una query utilizza AND (esempio: select * from tableName where a=1 AND b=2 AND c=3), inserire la condizione più efficiente (la condizione che restituisce meno righe) per ultima, la seconda condizione più efficiente come penultima, ecc.
  • Quando una query utilizza OR (esempio: select * from tableName where a=1 OR b=2 OR c=3), inserire la condizione più efficiente per prima, la seconda condizione più efficiente per seconda, ecc.
  • Quando si cerca in un campo qualsiasi valore tranne NULL e per il campo è stato creato un indice in Oracle Responsys, utilizzare la funzione upper() nella query per usufruire dell'indice. Oracle Responsys utilizza indici basati sulle funzioni, in cui le chiavi di ricerca vengono convertite in lettere tutte maiuscole mediante la funzione upper().

    Esempio: il campo Email è l'indice di estrazione dei dati della tabella e pertanto automaticamente indicizzato.

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

Argomenti correlati