Gestire date non valide

Analisi delle serie temporali in SQL Server

Maham Faisal Khan

Senior Data Science Content Developer

Funzioni di conversione date a prova di errore

Funzioni "non sicure"

CAST()
CONVERT()
PARSE()

Funzioni sicure

TRY_CAST()
TRY_CONVERT()
TRY_PARSE()
Analisi delle serie temporali in SQL Server

Quando tutto va bene

SELECT
    PARSE('01/08/2019' AS DATE USING 'en-us') AS January8US,
    PARSE('01/08/2019' AS DATE USING 'fr-fr') AS August1FR;
GO

Risultati:

January8US August1FR
2019-01-08 2019-08-01
Analisi delle serie temporali in SQL Server

Quando tutto va male

SELECT
    PARSE('01/13/2019' AS DATE USING 'en-us') AS January13US,
    PARSE('01/13/2019' AS DATE USING 'fr-fr') AS Smarch1FR;
GO
**Msg 9819, Level 16, State 1, Line 1**

Errore durante la conversione del valore stringa '01/13/2019' nel tipo data usando la cultura 'fr-fr'.
Analisi delle serie temporali in SQL Server

Fare bene quando tutto va male

SELECT
    TRY_PARSE('01/13/2019' AS DATE USING 'en-us') AS January13US,
    TRY_PARSE('01/13/2019' AS DATE USING 'fr-fr') AS Smarch1FR;
GO
January13US Smarch1FR
2019-01-13 NULL
Analisi delle serie temporali in SQL Server

Il costo della sicurezza

Usare metodi sicuri non costa più dei metodi non sicuri.

Analisi delle serie temporali in SQL Server

Il costo della sicurezza

Le funzioni CAST() e CONVERT() hanno velocità simile.

Analisi delle serie temporali in SQL Server

Il costo della sicurezza

Le funzioni PARSE() sono molto più lente di CAST() e CONVERT().

Analisi delle serie temporali in SQL Server

Il costo della sicurezza

Sono misure al secondo: scalano linearmente.

Analisi delle serie temporali in SQL Server

Vamos praticar!

Analisi delle serie temporali in SQL Server

Preparing Video For Download...