Consulta SQL para convertir fecha y hora en fecha

En MS SQL Server, las fechas son complicadas para los principiantes, ya que mientras se trabaja con la base de datos, el formato de la fecha en la tabla debe coincidir con la fecha ingresada para poder insertar. En varios escenarios, en lugar de la fecha, se utiliza DateTime (la hora también está relacionada con la fecha). En este artículo, aprenderemos cómo convertir un DateTime en un DATE utilizando las tres funciones diferentes.

El objetivo de los datos de este artículo es convertir DateTime a Date en SQL Server como AAAA-MM-DD HH:MM: SS a AAAA-MM-DD.

Método 1: usar yeso

Esta es una función para convertir un tipo a otro tipo, por lo que aquí la usaremos para convertir DateTime hasta la fecha.

Sintaxis:

CAST( dateToConvert AS DATE) 

Ejemplo 1:

Consulta:

SELECT CAST(GETDATE() AS DATE) AS CURRENT_DATE 

Producción:

OBTENER LA FECHA(): Esta función devuelve la fecha y hora actual como (2021-08-27 17:26:36.710)

Ejemplo 2;

Consulta:

SELECT CAST('2021-08-27 17:26:36.710' AS DATE) AS CURRENT_DATE_GFG 

Producción:

Método 2: usar Convertir

Esta es una función para convertir un tipo en otro tipo, así que aquí la usaremos para convertir DateTime a fecha.

Sintaxis:

CONVERT(DATE, dateToConvert) 

Ejemplo 1:

Consulta:

SELECT CONVERT(DATE, GETDATE()) AS CURRENT_DATE_GFG 

Producción:

Ejemplo 2:

Consulta:

SELECT CONVERT(DATE, '2021-08-27 17:26:36.710' ) AS CURRENT_DATE_GFG 

Producción:

Método 3: Try_Convert

Esta es una función para convertir un tipo a otro tipo, por lo que aquí la usaremos para Convertir fecha y hora a fecha. si la fecha no es válida, será nula mientras Convert genera un error.

Sintaxis:

TRY_CONVERT(DATE, dateToConvert) 

SELECCIONE TRY_CONVERT(FECHA,’2021-08-27 17:26:36.710′) COMO CURRENT_DATE_GFG

Ejemplo 1:

Consulta:

SELECT TRY_CONVERT(DATE,GETDATE()) AS CURRENT_DATE_GFG 

Producción:

Ejemplo 2:

Consulta:

SELECT TRY_CONVERT(DATE,'2021-08-27 17:26:36.710') AS CURRENT_DATE_GFG 

Producción:

Método 4: usar subcadena

Esta es una función para obtener una cadena corta o subcadena, por lo que aquí obtenemos el índice de subcadena 0 a 11.

Sintaxis:

SUBSTRING( dateToConvert ,0,11) 

Ejemplo 1:

Consulta:

SELECT SUBSTRING( '2021-08-27 17:26:36.710' ,0,11) AS CURRENT_DATE_GFG 

Producción:

Ejemplo 2;

Consulta:

SELECT SUBSTRING( CONVERT(varchar(17), GETDATE(), 23) ,0,11) AS CURRENT_DATE_GFG 

Producción: