La conversione è un'attività prevalente per programmatori e ingegneri di database. Questo articolo esplorerà come convertire un tipo Varchar in un tipo numerico in SQL standard.
Deve essere preso in considerazione che quando diciamo SQL standard, intendiamo tecniche e metodi universalmente adottati dai motori di database relazionali.
Metodo del cast SQL
In SQL standard, il tipografo viene realizzato utilizzando la funzione Cast (). La sintassi della funzione è come mostrata:
Cast (espressione come t_type [(lunghezza)]);La funzione richiede tre parametri principali:
SQL Convert Varchar in int
Considera l'esempio seguente che converte il tipo Varchar in un tipo Int64.
Seleziona Cast ('344' come int64);La query di esempio dovrebbe restituire il valore convertito in int come mostrato:
int4SQL Convert Varchar in numerico
Per convertire un tipo Varchar in un tipo numerico, modificare il tipo di destinazione come numerico o bignumerico come mostrato nell'esempio seguente:
Seleziona Cast ('344' come numerico) come numerico;Le query sopra dovrebbero restituire il valore specificato convertito in numerico e numerico numerico.
Si noti che per garantire che il motore del database supporti il tipo di destinazione; Altrimenti, restituirà un errore.
SQL Convert Varchar in galleggiante
Se hai Varchar a punta mobile, puoi convertirlo in un tipo di galleggiante, come mostrato nell'esempio seguente:
Seleziona Cast ('3.14159 'come galleggiante) come galleggiante;Il codice deve restituire il tipo di galleggiante del varchar specificato. L'output di esempio è come mostrato di seguito:
GALLEGGIANTESQL Casting sicuro
Ti sei chiesto cosa succede se provi a convertire una stringa non numerica in un tipo numerico? Considera l'esempio seguente:
Seleziona Cast ('Hello' come int64) come var;Se si tenta di eseguire la query sopra, fallirà poiché il tipo Varchar specificato non può essere convertito in int.
Per evitare che la domanda di fallimento se la conversione non è supportata, possiamo utilizzare il metodo Safe_cast.
La funzione si comporta in modo simile alla funzione di cast, tranne per il fatto che non fallisce se la conversione fallisce. Invece, restituisce null come mostrato nell'esempio seguente:
Seleziona Safe_cast ('Hello' come int64) come nan;Invece di un errore, la query sopra dovrebbe restituire:
"Nan": nullNOTA: Il metodo Safe_cast è supportato in SQL standard. Alcuni motori di database possono implementare le procedure in modo diverso. Ad esempio, in SQL Server, la funzione Safe_cast () viene rinominata Try_Cast o Try_Convert.
Conclusione
In questo tutorial, abbiamo discusso di come eseguire il cast di tipo in SQL standard. Ad esempio, abbiamo discusso di convertire Varchar in int64, numerico, bignumerico e float64. Abbiamo anche trattato come eseguire un casting sicuro per scenari in cui il tipo di cast può comportare un errore.