tengo una consulta a mi BD
SELECT campo1,campo2, (campo3-campo4) AS edad FROM tabla
WHERE edad >15
pero el mysql no me deja hacer esta consulta , me podrian ayudar para ver como se coloca????


gracias
| |||
![]() hola amigos tengo una consulta que no me han podido contestar en internet: tengo una consulta a mi BD SELECT campo1,campo2, (campo3-campo4) AS edad FROM tabla WHERE edad >15 pero el mysql no me deja hacer esta consulta , me podrian ayudar para ver como se coloca???? ![]() ![]() gracias |
| |||
Respuesta: incluir un valor AS dentro de WHERE Hazlo así SELECT campo1,campo2, (campo3-campo4) AS edad FROM tabla WHERE campo3 - campo4 > 15 Hace muy poco en otro post nos dijo seyko que esos alias no son parte del sql, aunque en algunos casos MySQL acepte su uso. Conviene, pues, no usar esos alias si la sintaxis de SQL vas a usarla con otras bases de datos. Lo que está claro es que MySQL no lo acepta dentro del WHERE, aunque sí en ORDER BY, GROUP BY, HAVING. Eso indica, tal vez, que primero recoge el dato del where y luego lo compara, pero si no ha hecho la selección (que al parecer es posterior) no reconoce el valor del alias; en cambio, parece que el order by es posterior... Última edición por jurena; 24/06/2008 a las 08:03 |