Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/08/2012, 17:04
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: fecha de caducidad SQL

Este tema se ha planteado varias veces, y la forma recomendada para resolverlo son las columnas calculadas, es decir, calcular el valor del campo premium en vez de almacenarlo en la base de datos, por ejemplo, suponiendo que los puntos necesarios sean 50 y que los días de caducidad son 30:

Código:
create table dbo.memb_info (mem_id varchar, puntos int, fecha_alta datetime)

select 
 mem_id,
 case
   when puntos < 50 then 0
   when puntos >=50 and fecha_alta < getdate()-30 then 1
   when puntos >=50 and fecha_alta >= getdate()-30 then 2
 end as premium
from dbo.memb_info
Saludos