Interogare SQL pentru a converti Datetime în Data

În MS SQL Server, datele sunt complicate pentru începători, deoarece în timpul lucrului cu baza de date, formatul datei din tabel trebuie să se potrivească cu data de intrare pentru a fi inserată. În diferite scenarii, în loc de dată, se folosește DateTime (ora este, de asemenea, implicată cu data). În acest articol, vom învăța cum să convertim un DateTime într-o DATE utilizând cele trei funcții diferite.

Scopul datelor acestui articol este de a converti DateTime în Data în SQL Server, cum ar fi AAAA-MM-ZZ HH:MM: SS în AAAA-LL-ZZ.

Metoda 1: Folosirea castului

Aceasta este o funcție pentru turnarea unui tip într-un alt tip, deci aici vom folosi pentru turnarea DateTime până în prezent.

Sintaxă:

CAST( dateToConvert AS DATE) 

Exemplul 1:

Interogare:

SELECT CAST(GETDATE() AS DATE) AS CURRENT_DATE 

Ieșire:

GETDATE(): Această funcție returnează data curentă, cum ar fi (2021-08-27 17:26:36.710)

Exemplul 2;

Interogare:

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

Ieșire:

Metoda 2: Folosind Convert

Aceasta este o funcție pentru convertirea unui tip în alt tip, așa că aici o vom folosi pentru a converti DateTime la data.

Sintaxă:

CONVERT(DATE, dateToConvert) 

Exemplul 1:

Interogare:

SELECT CONVERT(DATE, GETDATE()) AS CURRENT_DATE_GFG 

Ieșire:

Exemplul 2:

Interogare:

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

Ieșire:

Metoda 3: Try_Convert

Aceasta este o funcție pentru turnarea unui tip într-un alt tip, așa că aici vom folosi pentru Convert DateTime la data. dacă data este invalidă, atunci va fi nulă în timp ce Convert generează o eroare.

Sintaxă:

TRY_CONVERT(DATE, dateToConvert) 

SELECTAȚI TRY_CONVERT(DATE,’2021-08-27 17:26:36.710′) AS CURRENT_DATE_GFG

Exemplul 1:

Interogare:

SELECT TRY_CONVERT(DATE,GETDATE()) AS CURRENT_DATE_GFG 

Ieșire:

Exemplul 2:

Interogare:

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

Ieșire:

Metoda 4: Utilizarea subșirului

Aceasta este o funcție de utilizat pentru a obține un șir scurt sau subșir, așa că aici folosim obținem subșir de la 0 la 11 index.

Sintaxă:

SUBSTRING( dateToConvert ,0,11) 

Exemplul 1:

Interogare:

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

Ieșire:

Exemplul 2;

Interogare:

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

Ieșire: