Partimos de una base de datos que tiene un campo fecha de nacimiento tipo DATE y lo hemos rellenado con variedad de valores para comprobar su buen funcionamiento.
En primer lugar vamos a mostrar el campo Nombre, Apellidos y el año de nacimiento, observe la siguiente instrucción:
SELECT "Nombre" , "Apellidos", YEAR("Fecha Nacimiento") FROM "Usuarios"
WHERE "Población" = 'Zaragoza'
La función YEAR es encargada de devolvernos el año de nacimiento del campo Fecha Nacimiento.
Pongamos en práctica lo que hemos aprendido en LibreOffice Base, una vez abierta la base de datos donde va a trabajar, seleccione la sección de Consultas, haga clic en la opción Crear una consulta en modo SQL...
Le mostrará el siguiente cuadro de diálogo, en este puede introducir la instrucción que acabamos de estudiar.
Haga clic en el botón Ejecutar consulta para que le muestre el resultado. Como se ha explicado, el ejecutar la instrucción nos muestra los campos Nombre, Apellidos y el valor correspondiente al año de nacimiento extraído del campo Fecha Nacimiento.
A continuación vamos a introducir nuevas funciones en nuestra QUERY en SQL. Calcularemos cuantos años tiene cada usuario, para ello hemos introducido la siguiente fórmula:
SELECT "Nombre" , "Apellidos", YEAR("Fecha Nacimiento"),
YEAR(CURDATE()) - YEAR("Fecha Nacimiento")
FROM "Usuarios" WHERE "Población" = 'Zaragoza'
El cálculo de los años del usuario se hace con esta fórmula, dentro de la sentencia SELECT.
YEAR(CURDATE()) - YEAR("Fecha Nacimiento")
Se distinguen de forma clara dos partes en la fórmula, en primer lugar YEAR(CURDATE()), captura la fecha actual con la función CURDATE() del servidor y ordenador personal, esa fecha que se muestra en el escritorio del sistema operativo. Para luego extraer el año de la fecha capturada con la función YEAR(CURDATE()), como aviso a usuarios novatos, mucho cuidado con esto, ya que si el servidor u ordenador personal tienen incorrecta la fecha, lo calculará con esta fecha.
En la segunda parte de la operación se encuentra la función YEAR("Fecha Nacimiento"), es la encargada de devolvernos el año de nacimiento del campo Fecha Nacimiento.
Para terminar calculará la diferencia entre los dos años con:
YEAR(CURDATE()) - YEAR("Fecha Nacimiento")
Pondremos en práctica lo que hemos aprendido en LibreOffice Base, una vez abierta la base de datos donde va a trabajar, seleccione la sección de Consultas, haga clic en la opción Crear una consulta en modo SQL...
Le mostrará el siguiente cuadro de diálogo, en este puede introducir la instrucción que acabamos de estudiar.
Haga clic en el botón Ejecutar consulta para que le muestre el resultado.
Vamos a rematar el trabajo ampliando el uso de las funciones que hemos visto en los ejemplos anteriores, observe la siguiente función:
SELECT "Nombre", "Apellidos", YEAR( "Fecha Nacimiento" ), YEAR( CURDATE( ) ) - YEAR( "Fecha Nacimiento" ) FROM "Usuarios"
WHERE YEAR( CURDATE( ) ) - YEAR( "Fecha Nacimiento" ) > 40
Hemos realizado algunas modificaciones, en la partícula WHERE hemos colocado el siguiente filtro:
YEAR( CURDATE( ) ) - YEAR( "Fecha Nacimiento" ) > 40
Con este filtro conseguiremos seleccionar los usuarios que tengan mas de 40 años de edad. Hemos repetido la instrucción que habíamos explicado y añadido un operador lógico con un valor, > 40.
Realizaremos una nueva práctica con lo que hemos aprendido en LibreOffice Base, una vez abierta la base de datos donde va a trabajar, seleccione la sección de Consultas, haga clic en la opción Crear una consulta en modo SQL...
Le mostrará el siguiente cuadro de diálogo, en este puede introducir la instrucción que acabamos de estudiar.
Haga clic en el botón Ejecutar consulta para que le muestre el resultado.
0 comentarios:
Publicar un comentario