Duda de rendimiento
Publicado por eljhonb (124 intervenciones) el 16/05/2007 21:52:04
Qué opción de estas me daría mejor rendimiento?
Esta es la situación:
Necesito tomar datos de varias tablas, almacenarlos temporalmente y luego hacer un join del resultado con otra tabla.
Estas son las opciones:
1. Utilizar una tabla temporal para almacenar los datos de las diferentes tablas y luego hacer el Join con la otra tabla que tengo en mi BD. La inserción en la tabla temporal la haría con la instrucción Insert into ... selec ...
2. Utilizar una tabla temporal para almacenar los datos de las diferentes tablas y luego hacer el Join con la otra tabla que tengo en mi BD. La inserción en la tabla temporal la haría con la instrucción Select ... into ...
3. Utilizar una variable tipo table en lugar de una tabla temporal.
la tabla temporal tendría alrededor de 540000 registros den longitud promedio de 130 caracteres por registro.
Según he leído, daría mejor rendimiento una variable tipo tabla que una tabla temporal pero no he encontrado el caso en el que el resultado almacenado se cruce (JOIN) con otra tabla. También he leído algo acerca del select ... into ... y parece que da mejor rendimiento que el insert into ... cuando hay un gran volumen de datos..
Espero me puedan orientar un poco en esto.. Muchas Gracias
Esta es la situación:
Necesito tomar datos de varias tablas, almacenarlos temporalmente y luego hacer un join del resultado con otra tabla.
Estas son las opciones:
1. Utilizar una tabla temporal para almacenar los datos de las diferentes tablas y luego hacer el Join con la otra tabla que tengo en mi BD. La inserción en la tabla temporal la haría con la instrucción Insert into ... selec ...
2. Utilizar una tabla temporal para almacenar los datos de las diferentes tablas y luego hacer el Join con la otra tabla que tengo en mi BD. La inserción en la tabla temporal la haría con la instrucción Select ... into ...
3. Utilizar una variable tipo table en lugar de una tabla temporal.
la tabla temporal tendría alrededor de 540000 registros den longitud promedio de 130 caracteres por registro.
Según he leído, daría mejor rendimiento una variable tipo tabla que una tabla temporal pero no he encontrado el caso en el que el resultado almacenado se cruce (JOIN) con otra tabla. También he leído algo acerca del select ... into ... y parece que da mejor rendimiento que el insert into ... cuando hay un gran volumen de datos..
Espero me puedan orientar un poco en esto.. Muchas Gracias
Valora esta pregunta


0