Hola mira te hice este codigo es posible que los que saben mas de esto te lo puedan hacer mas reducido quizas con select case pero bueno en fin este lo probe y funciona:
Código MySQL:
Ver original "Menor a 18",
"Entre 18 y 30",
"Entre 30 y 50",
"Entre 50 y 70",
"Entre 70 y 90",
"Entre 90 y 100",
"Otra Edad"
)
)
)
)
)
)
Lo primero que hago es calcular la edad de la persona en base a su fecha de nacimiento para eso uso DATEDIFF(now(),fecha); que lo que hace es restar la fecha actual con el campo fecha de la tabla, como DATEDIFF devuelve dicho calculo en dias al mismo lo divido por 365, a ese resultado le aplico la funcion FLOOR que lo que hace es redondear para abajo el resultado ya que por ejemplo 12.5 años en realidad como resultado de edad son 12.
El resto es mas facil son IFS anidados, la sintaxis del if de mysql es IF (CONDICION,VERDADERO,FALSO), entonces lo que hago es:
IF (edad (representada por floor(datediff etc) < 18 ,"Menor a 18" (devuelve menor a 18 en la vista) , ACA SI NO SE CUMPLE LA CONDICION HAGO EL OTRO IF) asi voy haciendo con todos los casos hasta llegar al ultimo donde en el lugar la condicion donde va la parte falsa en lugar de otro if coloco "otra edad" en caso de que la persona sea mayor a 100 años por ejemplo
Fijate si te funciona y me avisas.
Salu2