SQL Server Performance Forum – Threads Archive
Para definir bien mi solucion
Hola a todos, un favor, tengo una tabla que tengo que actualizar tanto requerimiento inicial y final en algunas columnas, no tengo problema, lo realice, pero si hago un inner join entre ambas tablas y uso un select en cada valor a cambiar, el procedimiento demora casi 1 segundo, pero la otra alternativa era generar una tabla temporal donde guardo primero el select para recuperar los registros con el minimo y maximo del registro deseado y a esta tabla resultante recien la relaciono a la anterior para actualizar y el procedimiento demora 0 segundos, no se cuantos milisegundos pero es mas rapido, la pregunta es, ¿es mejor crear tablas temporales para segmentar mi informacion, y si fuera asi, que diferencia tengo en crear una tabla normal y una del tipo temporal con $$ o ## no recuerdo bien?, de antemano gracias por sus comentarios seran de gran ayuda.No creo que la respuesta pueda ser un absoluto, debe analizarse cada caso, ya que en algunos es mejor y en otros es indiferente, con lo cual se agrega una complejidad innecesaria de administrar. Las tablas temporarias que yo uso son las de un solo # no con dos ##, ya que estas no son locales a la conexion y pueden llevar a errores.
Hay muchos artÃculos sobre tablas temporarias. Los mejores consejos dicen: . Tratar de evitar las temporarias (##) globales
. Usar tablas temporarias en lugar de cursores
. No llenar y crear las tablas en un solo paso con la instrucción SELECT INTO
Ej: SELECT Campo1, Campo2 INTO Temp# From MiTabla . Siempre crear un indice en la tabla temporaria Saludos
Ok, revisare la documentacion a la que te refieres, gracias nuevamente
]]>