Existen tres cláusulas muy útiles para el manejo de datos tipo FECHA. Dichas cláusulas son DAY, MONTH y YEAR. A continuación procedemos a desarrollar un ejemplo para ilustrar dichas cláusulas.
Vamos a suponer que tenemos una tabla, llamada PROPIETARIO, con los datos ilustrados en la imagen de la izquierda. El campo denominado FECHANAC (fecha de nacimiento) es de tipo DATE. |
|
Si necesitamos consultar los datos de los propietarios que hayan nacido en el año 2000, podemos utilizar la cláusula YEAR para extraer el año de la fecha de nacimiento. Podemos observar que hay dos propietarios nacidos en el año 2000: Ana Mesa y Melissa Ruiz. El comando para hacer la consulta sería el siguiente. |
|
Por otra parte, si necesitamos consultar los propietarios nacidos en el mes de septiembre (mes 9) de cualquier año, podemos utilizar la cláusula MONTH, de la siguiente manera. |
|
Y si, por ejemplo, necesitamos saber los datos de los propietarios que hayan nacido un día 15 de cualquier mes y año, podemos utsar lacláusula DAY. |
Ahora supongamos que tenemos una fecha grabada en un campo tipo VARCHAR. Si requerimos hacer las mismas consultas anteriores, podríamos usar la cláusula SUBSTRING. A través del siguiente ejemplo, mostramos la utilidad de dicha cláusula.
Supongamos que tenemos una tabla llamada VEHICULO, y uno de sus campos es la fecha de fabricacion del vehiculo. Dicho campo está definido como VARCHAR(10). Se supone que en dicha tabla, al grabar dichas fechas, se respeta el formato DD/MM/YYYY. | |
Supongamos que queremos consultar los datos de los vehiculos fabricados en el año 1971. Existen 2 vehiculos fabricados en dicho año. Para hacer la consulta, usamos la cláusula SUBSTRING, como se ve en la imagen de la izquierda. La cláusula SUBSTRING tiene tres parámetros, que son los que están dentro del paréntesis. Estos tres parámetros corresponden a lo siguiente:
Como podemos observar, el formato que se está utilizando en las fechas indica que el año de fabricación comienza en la posicion 7 del varchar, y que la logitud del año es de 4 caracteres. Por eso tenemos los parámetros mostrados. |
|
Si necesitamos consultar los datos de los vehículos fabricados en el mes de noviembre de cualquier año, la solución es la que se muestra. |
|
|
Y si necesitamos consultar los datos de los vehiculos fabricados el día 25 de cualquier mes y año? |
Videos:
Cláusulas DAY, MONTH y YEAR | Cláusula SUBSTRING |