Per le conversioni tra tipi di dati stringa e numerici, è possibile fornire, nel parametro FORMAT della funzione CAST, un'espressione di formattazione facoltativa. Per le conversioni da tipi stringa, l'espressione di formattazione definisce il modo in cui analizzare la stringa di origine per soddisfare il tipo di dati di destinazione. Per le conversioni in tipi stringa, definisce il modo in cui i dati nell'espressione di origine devono essere formattati nella stringa di destinazione.
Una sequenza di zero o più caratteri. E' possibile utilizzare tutti i caratteri, eccetto i caratteri speciali elencati nella Tabella 1.
Uno o più caratteri da utilizzare come separatore tra la parte intera e la parte decimale di un numero (separatore decimale). Il separatore decimale predefinito è il punto (.).
Una sequenza di uno o più dei token numerici (0 # - + , . ) elencati nella Tabella 1.
Uno o più caratteri da utilizzare come separatore tra i cluster di integer, per rendere più leggibili i numeri elevati (separatore di gruppo). Per impostazione predefinita, le cifre non vengono raggruppate e non è definita la separazione dei gruppi.
Se sono utilizzati più separatori di raggruppamento (come nell'esempio precedente), il separatore all'estrema destra definisce la misura primaria ed il penultimo separatore a destra definisce la misura secondaria.
Token | Rappresenta |
---|---|
0 | Qualsiasi cifra, incluso lo zero iniziale. |
# | Qualsiasi cifra, escluso lo zero iniziale. Vedere la spiegazione della differenza tra 0 e # riportata dopo questa tabella. |
. | Separatore decimale. |
+ | Prefisso dei numeri positivi. |
- | Prefisso dei numeri negativi. |
, | Separatore di raggruppamento. |
E/e | Separa il numero dall'esponente. |
; | Limite del subpattern. |
' | Apice, utilizzato per indicare caratteri speciali. Se nell'output è necessario visualizzare un apice, è necessario raddoppiarlo (''). |
* | Specificatore di riempimento. Il carattere che segue l'asterisco viene utilizzato per completare il numero in modo da raggiungere la lunghezza del modello del formato. |
I caratteri # e 0 sono utilizzati per la sostituzione delle cifre; la differenza tra di essi è che il carattere # viene rimosso se non esiste alcun numero per sostituirlo. Ad esempio, 10 formattato con il modello #,##0.00 è "10.00", ma formattato con il modello 0,000.00 è "0,010.00".
Per specificare i caratteri di riempimento, utilizzare un asterisco. Quando è posizionato un asterisco in una delle due regioni chars (prefisso e suffisso), il carattere immediatamente successivo viene utilizzato per il riempimento dell'output. Il riempimento può essere specificato una sola volta. Ad esempio, il modello *x#,###,##0.00 applicato a 1234 ha come risultato "xxx1,234.00". Applicato a 1234567, ha come risultato "1,234,567.00".
Modello | Numero di input | Stringa di output |
---|---|---|
+###,##0.00;-###,###,##0.00:groupsep='':decsep=, | 123456789.123 | "+123'456'789,12" |
##0.00 | 1000000 | "1000000.00" |
##0.00 | 3.14159265 | "3.14" |