STR (Transact-SQL)

Restituisce dati di tipo carattere convertiti da dati di tipo numerico.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

STR ( float_expression [ , length [ , decimal ] ] )

Argomenti

  • float_expression
    Espressione del tipo di dati numerico approssimato (float) con un separatore decimale.
  • length
    Lunghezza totale, che include il separatore decimale, il segno, le cifre e gli spazi. Il valore predefinito è 10.
  • decimal
    Numero di posizioni a destra del separatore decimale. decimal deve essere minore o uguale a 16. Se decimal è maggiore di 16, il risultato viene troncato in modo da includere sedici posizioni a destra del separatore decimale.

Tipi restituiti

char

Osservazioni

I valori dei parametri length e decimal della funzione STR devono essere positivi. Il numero viene arrotondato a un valore integer per impostazione predefinita o quando il parametro decimal è 0. La lunghezza specificata deve essere maggiore o uguale alla parte intera del numero (a sinistra del separatore decimale) più il segno del numero, se disponibile. Un argomento di tipo float_expression breve viene allineato a destra in base alla lunghezza specificata, mentre un argomento di tipo float_expression lungo viene troncato in base al numero di posizioni decimali specificato. Ad esempio, STR(12**,10) restituisce il risultato 12, che viene allineato a destra nel set di risultati. STR(1223,**2) tronca invece il set di risultati a **. Le funzioni stringa possono essere nidificate.

[!NOTA] Per eseguire la conversione in dati Unicode, utilizzare STR in una funzione di conversione CONVERT o CAST.

Esempi

Nell'esempio seguente un'espressione composta da cinque cifre e un separatore decimale viene convertita in una stringa di caratteri con sei posizioni. La parte frazionaria del numero viene arrotondata a una posizione decimale.

SELECT STR(123.45, 6, 1)
GO

Set di risultati:

------
 123.5

(1 row(s) affected)

Quando l'espressione supera la lunghezza specificata, la stringa restituisce ** per la lunghezza specificata.

SELECT STR(123.45, 2, 2)
GO

Set di risultati:

--

(1 row(s) affected)

Quando nella funzione STR i dati numerici sono nidificati, il risultato corrisponde comunque a dati di tipo carattere nel formato specificato.

SELECT STR (FLOOR (123.45), 8, 3)
GO

Set di risultati:

--------
 123.000

(1 row(s) affected)

Vedere anche

Riferimento

Funzioni per i valori stringa (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005