Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/04/2012, 11:43
maue75
 
Fecha de Ingreso: noviembre-2008
Mensajes: 288
Antigüedad: 15 años, 6 meses
Puntos: 2
como utilizar una variable calculada en el WHERE

Hola,
he calculado la edad de una tabla de personas,
pero en cuanto condiciono por ese calculo, siempre me devuelve 0 encontrados.


SELECT @edad := (YEAR(CURDATE())-YEAR(fecha_nacimiento))-(RIGHT(CURDATE(),5)<(RIGHT(fecha_nacimiento,5))) AS `edad`, personas.id
FROM `personas`
WHERE ( @edad = @edad )

Este query debería devolver siempre algo, pues el where no debería filtrar nada, sinembargo, basta con que utilice ahi una variable "@" para que no devuelva nada.

( si solo utilizo la variable edad sin el '@', me dice que no existe tal campo, ya que en la tabla no existe ).

alguien sabe por qué el error?

gracias