Saltar la navegación

CLÁUSULAS DAY, MONTH, YEAR, SUBSTRING

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.

datos

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.

CONSULTA1

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.

CONSULTA2

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.

CONSULTA3

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.

vehiculo 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.
CONSULTA4

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:

  • El primer parámetro es el nombre del campo de donde se va a extraer un substring.
  • El segundo parámetro es la posición inicial del substring que se va a extraer. Hay que entender que la primera posición de un varchar es la 1, no la 0.
  • El tercer parámetro es la longitud, en caracteres, del substring que se va a extraer.

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.

consulta66

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.

consulta 7

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