Ver Mensaje Individual
  #11 (permalink)  
Antiguo 31/07/2013, 13:30
tvzbien
 
Fecha de Ingreso: abril-2011
Mensajes: 49
Antigüedad: 13 años
Puntos: 3
Respuesta: mostrar rango de edades con php

Estimados después de un tiempo de tantas pruebas me he decidido hacerlo a través de una consulta sql creando una vista. algo como esto:

CREATE VIEW `AlumnosEdades` AS

SELECT apellido_nombre, YEAR( CURDATE() ) - YEAR(date_format( str_to_date(fecha_nacimiento, '%d/%m/%Y' ), '%Y%m%d' ) ) edad FROM alumnos
;

Esto devolvería en teoria un resultado asi:

SELECT * FROM AlumnosEdades;

nombre edad
Jose 25
Pepe 40

Sobre esto realizaría una consulta para sacar los rangos

SELECT COUNT(edad) cantidad FROM AlumnosEdades WHERE edad > 25;

Devuelve los alumnos con mas de 25

luego Uniria para mostrar mas rangos

SELECT COUNT(edad) cantidad FROM AlumnosEdades WHERE edad > 25
UNION ALL
SELECT COUNT(edad) cantidad FROM AlumnosEdades WHERE edad > 25 AND edad < 50 ;

Devuelve los alumnos de mas de 25 y menores a 5

El tema es que no pasé ni la primer consulta sql ya que cuando la ingreso ya sea desde la interfaz de mysql query browser como de phpmyadmin me tira un error 1064 y me dice que algo está equivocado en su sintax cerca de 'VIEW 'AlumnosEdades' AS SELECT apellido_nombre, YEAR( CURDATE()' en la linea 1 y no puedo hacer mas nada. El sistema que estoy modificando esta montado en una pc con linux debian samba 3.0.14 (un poco viejito) y la base esta bajo mysql 3.23.32.

Desde ya muchas gracias por todas sus sugerencia y consejos. He notado que han sido todos muy predispuestos en este hilo.