Microsoft SQL Server
Conversione di tipi di dati
Ricerca…
PROVA PARSE
Converte il tipo di dati stringa nel tipo di dati di destinazione (Data o Numerico).
Ad esempio, i dati di origine sono di tipo stringa e dobbiamo specificare il tipo di data. Se il tentativo di conversione fallisce, restituisce il valore NULL.
Sintassi: TRY_PARSE (string_value AS data_type [USING culture])
Valore_stringa: questo argomento è il valore sorgente che è il tipo NVARCHAR (4000).
Data_type: questo argomento è il tipo di dati di destinazione data o numerico.
Cultura - È un argomento facoltativo che aiuta a convertire il valore in formato cultura. Supponiamo di voler visualizzare la data in francese, quindi devi passare il tipo di cultura come "Fr-FR". Se non passerai alcun nome di cultura valido, allora PARSE genererà un errore.
DECLARE @fakeDate AS varchar(10);
DECLARE @realDate AS VARCHAR(10);
SET @fakeDate = 'iamnotadate';
SET @realDate = '13/09/2015';
SELECT TRY_PARSE(@fakeDate AS DATE); --NULL as the parsing fails
SELECT TRY_PARSE(@realDate AS DATE); -- NULL due to type mismatch
SELECT TRY_PARSE(@realDate AS DATE USING 'Fr-FR'); -- 2015-09-13
PROVA CONVERTITO
Converte valore nel tipo di dati specificato e se la conversione fallisce, restituisce NULL. Ad esempio, il valore di origine in formato stringa e abbiamo bisogno di formato data / intero. Allora questo ci aiuterà a raggiungere lo stesso risultato.
Sintassi: TRY_CONVERT (data_type [(lunghezza)], espressione [, stile])
TRY_CONVERT () restituisce un cast di valori al tipo di dati specificato se il cast ha esito positivo; in caso contrario, restituisce null.
Data_type: il tipo di dati in cui convertire. Qui la lunghezza è un parametro facoltativo che aiuta a ottenere risultati nella lunghezza specificata.
Espressione: il valore da convertire
Stile: è un parametro opzionale che determina la formattazione. Supponiamo che tu voglia un formato data come "Maggio 18 2013", quindi devi passare lo stile come 111.
DECLARE @sampletext AS VARCHAR(10);
SET @sampletext = '123456';
DECLARE @ realDate AS VARCHAR(10);
SET @realDate = '13/09/2015’;
SELECT TRY_CONVERT(INT, @sampletext); -- 123456
SELECT TRY_CONVERT(DATETIME, @sampletext); -- NULL
SELECT TRY_CONVERT(DATETIME, @realDate, 111); -- Sep, 13 2015
PROVA CAST
Converte valore nel tipo di dati specificato e se la conversione fallisce, restituisce NULL. Ad esempio, il valore sorgente in formato stringa e ne abbiamo bisogno in formato doppio / intero. Allora questo ci aiuterà a raggiungerlo.
Sintassi: TRY_CAST (espressione AS data_type [(lunghezza)])
TRY_CAST () restituisce un cast di valori al tipo di dati specificato se il cast ha esito positivo; in caso contrario, restituisce null.
Espressione: il valore sorgente che andrà a trasmettere.
Data_type: il tipo di dati di destinazione che verrà lanciato il valore di origine.
Lunghezza: è un parametro facoltativo che specifica la lunghezza del tipo di dati di destinazione.
DECLARE @sampletext AS VARCHAR(10);
SET @sampletext = '123456';
SELECT TRY_CAST(@sampletext AS INT); -- 123456
SELECT TRY_CAST(@sampletext AS DATE); -- NULL
lanciare
La funzione Cast () viene utilizzata per convertire una variabile di tipo dati o dati da un tipo di dati a un altro tipo di dati.
Sintassi
CAST ([Espressione] AS Datatype)
Il tipo di dati a cui stai trasmettendo un'espressione è il tipo di destinazione. Il tipo di dati dell'espressione da cui stai trasmettendo è il tipo di origine.
DECLARE @A varchar(2)
DECLARE @B varchar(2)
set @A='25a'
set @B='15'
Select CAST(@A as int) + CAST(@B as int) as Result
--'25a' is casted to 25 (string to int)
--'15' is casted to 15 (string to int)
--Result
--40
DECLARE @C varchar(2) = 'a'
select CAST(@C as int) as Result
--Result
--Conversion failed when converting the varchar value 'a' to data type int.
Genera errore se fallisce
Convertire
Quando si convertono le espressioni da un tipo a un altro, in molti casi è necessario eseguire una stored procedure o un'altra routine per convertire i dati da un tipo datetime a un tipo varchar. La funzione Converti è usata per cose del genere. La funzione CONVERT () può essere utilizzata per visualizzare dati di data / ora in vari formati. Sintassi
CONVERT (data_type (length), expression, style)
Stile: valori di stile per la conversione datetime o smalldatetime ai dati carattere. Aggiungi 100 a un valore di stile per ottenere un anno a quattro cifre che include il secolo (aaaa).
select convert(varchar(20),GETDATE(),108)
13:27:16