TRUNCfunzione - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

TRUNCfunzione

La TRUNC funzione tronca i numeri al numero intero o decimale precedente.

La TRUNC funzione può facoltativamente includere un secondo argomento INTEGER per indicare il numero di cifre decimali per l'arrotondamento, in entrambe le direzioni. Quando non si specifica il secondo argomento, la funzione viene arrotondata al numero intero più vicino. Quando il secondo argomento specificato è integer, la funzione viene arrotondata al numero più vicino con un valore integer di cifre decimali di precisione.

Questa funzione può anche troncare un TIMESTAMP e restituire DATE. Per ulteriori informazioni, consulta Funzione TRUNC.

Sintassi

TRUNC(number [ , integer ])

Argomenti

numero

Un numero o un'espressione che restituisce un numero. Può essere di tipo DECIMAL, FLOAT8 o SUPER. Altri tipi di dati possono essere convertiti da Amazon Redshift in base alle regole di conversione implicita.

integer

(Facoltativo) INTEGER che indica il numero di posizioni decimali di precisione, in entrambe le direzioni. Se non viene fornito un valore integer, il numero viene troncato come numero intero; se viene specificato un valore integer, il numero viene troncato alla posizione decimale specificata. Non è supportato per il tipo di dati SUPER.

Tipo restituito

TRUNCrestituisce lo stesso tipo di dati del numero di input.

Quando l'input è di tipo SUPER, l'output mantiene lo stesso tipo dinamico dell'input mentre il tipo statico rimane il tipo SUPER. Quando il tipo dinamico SUPER non è un numero, Amazon Redshift restituisce NULL.

Esempi

Alcuni dei seguenti esempi utilizzano il database TICKIT di esempio. Per ulteriori informazioni, consulta Database di esempio.

Per troncare la commissione pagata per una determinata transazione di vendita, utilizza l'esempio seguente.

SELECT commission, TRUNC(commission) FROM sales WHERE salesid=784; +------------+-------+ | commission | trunc | +------------+-------+ | 111.15 | 111 | +------------+-------+

Per troncare lo stesso valore della commissione alla prima posizione decimale, utilizza l'esempio seguente.

SELECT commission, TRUNC(commission,1) FROM sales WHERE salesid=784; +------------+-------+ | commission | trunc | +------------+-------+ | 111.15 | 111.1 | +------------+-------+

Per troncare la commissione con un valore negativo per il secondo argomento, utilizza l'esempio seguente. Tieni presente che 111.15 è arrotondato per difetto a 110.

SELECT commission, TRUNC(commission,-1) FROM sales WHERE salesid=784; +------------+-------+ | commission | trunc | +------------+-------+ | 111.15 | 110 | +------------+-------+