Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/10/2011, 11:57
Avatar de stuart_david3
stuart_david3
 
Fecha de Ingreso: agosto-2011
Mensajes: 215
Antigüedad: 12 años, 7 meses
Puntos: 1
Exclamación Validar Alias SQL, manejo de fechas!!!

Hola a todos!!! Disculpen la molestia, tengo una duda con una consulta que estoy desarrollando en sql.

Lo que intento hacer es delimitar los registros diciendo que sí el sexo de un trabajador (sextrab) es masulino le agregue 30 años a su fecha de antigüedad (fe_antre) en la empresa, si es mujer le agregue 25 años para determinar la fecha de su probable jubilación, eso si me lo hace la consulta para eso es esta:

Código SQL:
Ver original
  1. "SELECT fe_antre, CASE WHEN sexotrab='M' THEN DATEADD(yy, 30, fe_antre) ELSE DATEADD(yy, 25, fe_antre) END AS fe from b_traba1"

Ahora lo otro que quisiera hacer es que si el trabajador ya cumplió con los años de servicio en la empresa me arroje la cantidad de años que se ha pasado desde que pudo haberse jubilado, lo intente con esta consulta:

Código SQL:
Ver original
  1. "SELECT fe_antre, CASE WHEN sexotrab='M' THEN DATEADD(yy, 30, fe_antre) ELSE DATEADD(yy, 25, fe_antre) END AS fe, CONVERT (INT,(DATEDIFF (dd, GETDATE(), fe) - DATEDIFF (yy, GETDATE(), fe) / 4.25) / 365) AS anyjub from b_traba1"

Ya había hecho algo parecido antes con el "DATEDIFF" pero ahora que uso un alias (fe) me aparece un error:

"El nombre de columna 'fe' no es válido."

Cómo podría hacerle para que me valide "fe" en la consulta??... Agradezco mucho su ayuda...