y para eso un while???? lo puedes hacer con esto:
Código SQL:
Ver originalUPDATE #temp_segmentacion
SET cuentas_nuevas=t1.cuentas_nuevas,
normal=t1.normal,
vip=t1.vip
FROM
(
SELECT id,exp_cod,todos,nombre
CASE WHEN nombre='Cuentas Nuevas' THEN todos END AS Cuentas_nuevas,
CASE WHEN nombre='Normal ' THEN todos END AS Normal ,
CASE WHEN nombre='VIP' THEN todos END AS VIP
FROM #temp_segmentacion)
AS t1 WHERE #temp_segmentacion.id=t1.id
saludos!!!!