Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/08/2007, 05:47
chcma
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Que es mas optimo CASE O UPDATE?

Hola buenas tardes amigos,

Tengo una consulta bastante grande, en la que varios campos los tengo con CASE (Ejemplo):

[CODE]
SELECT
CASE CAST(SUBSTRING(DES_ATEXPL, 1943, 10) AS INT)
WHEN 0 THEN CAST(0 AS CHAR(1))
WHEN 6020 THEN CAST(1 AS CHAR(1))
WHEN 12030 THEN CAST(2 AS CHAR(1))
WHEN 18040 THEN CAST(3 AS CHAR(1))
WHEN 24050 THEN CAST(4 AS CHAR(1))
WHEN 30060 THEN CAST(5 AS CHAR(1))
ELSE CAST(0 AS CHAR(1))
END AS T_ASISTENCIA_SANITARIA
,

CASE ISNUMERIC(SUBSTRING(DES_ATEXPL, 151, 12))
WHEN 0 THEN CAST(NULL AS SMALLINT)
ELSE CAST(SUBSTRING(DES_ATEXPL, 151, 12) AS SMALLINT)
END AS DURACION_SEGURO
,

CASE SUBSTRING(DES_ATEXPL, 235, 1)
WHEN 'A' THEN 'ANUAL'
WHEN 'S' THEN 'SEMESTRAL'
WHEN 'T' THEN 'TRIMESTRAL'
ELSE NULL
END AS FORMA_PAGO
[CODE]


Y queria preguntar a los expertos que conozcan bien SQL Server si me pueden decir si seria más optimo meter estos resultados previamente en una TTemporal y luego hacer un update de dichos valores con una sentencia o si es mejor dejarlo asi.

Gracias.
__________________
Charlie.