Mostrando entradas con la etiqueta base de datos. Mostrar todas las entradas
Mostrando entradas con la etiqueta base de datos. Mostrar todas las entradas

miércoles, 20 de agosto de 2014

ORACLE: optimización de consultas basico

Utilización de campos específicos en lugar del *

  • Count(*)

Cuando haces una consulta con un count(*) solo para ver cuantos registros tiene una consulta no debería utilizar el * ya que la base de datos va y busca las columnas definidas de la tabla(y esto por pequeño que sea toma tiempo) en estos casos puedes hacer algo así:

select count(1) from usuario ;  --bien
el 1 representa el primer campo de la tabla
ó
select count(campo) from usuario ; --bien


y no usar
select count(*) from usuario ; --mal

En conclusión el tiempo que se toma en ejecutar el segundo query es menor el que se toma si el query tiene el count(*).


  • Select *

En algunas ocasiones no especificamos en nuestro código que campos específicamente vamos a utilizar de una tabla y utilizamos el *,pues cuando utilizamos el * y vamos a utilizar la mitad de los campos lo que sucede es que ocupamos mas recursos de la base de datos e incluso ocupamos mas red para llevar los datos al sistema que ejecuto la consulta.

Select  campo1, campo2,campo2 from tabla;  --bien

select * from tabla ; -- mal