Gestionarea datelor invalide

Analiza seriilor de timp în SQL Server

Maham Faisal Khan

Senior Data Science Content Developer

Funcții de conversie a datelor cu tratarea erorilor

Funcții "nesigure"

CAST()
CONVERT()
PARSE()

Funcții sigure

TRY_CAST()
TRY_CONVERT()
TRY_PARSE()
Analiza seriilor de timp în SQL Server

Când totul merge bine

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

Results:

January8US August1FR
2019-01-08 2019-08-01
Analiza seriilor de timp în SQL Server

Când totul merge prost

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**

Error converting string value '01/13/2019' into data type date using culture 'fr-fr'.
Analiza seriilor de timp în SQL Server

Cum să procedăm corect când totul merge prost

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
Analiza seriilor de timp în SQL Server

Costul siguranței

Utilizarea metodelor sigure nu este mai costisitoare decât utilizarea metodelor nesigure.

Analiza seriilor de timp în SQL Server

Costul siguranței

Funcțiile CAST() și CONVERT() rulează aproximativ la aceeași viteză.

Analiza seriilor de timp în SQL Server

Costul siguranței

Funcțiile PARSE() sunt mult mai lente decât CAST() și CONVERT().

Analiza seriilor de timp în SQL Server

Costul siguranței

Acestea sunt măsuri pe secundă, deci scalează liniar.

Analiza seriilor de timp în SQL Server

Să exersăm!

Analiza seriilor de timp în SQL Server

Preparing Video For Download...