TRUNC 函數 - AWS Clean Rooms

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

TRUNC 函數

TRUNC 函數將數字截斷為先前的整數或小數。

TRUNC 函數可以選擇性地包含第二個參數作為整數,以指示在任一方向四捨五入的小數位數。當您未提供第二個引數時,函數會四捨五入為最接近的整數。當指定第二個引數 >n 時,函數會捨入為小數位數 >n 個小數位數的最接近的數字。該函數還截斷時間戳並返回一個日期。

語法

TRUNC (number [ , integer ] | timestamp )

引數

number

數字或評估為數字的運算式。它可以是十進制或 FLOAT8 類型。 AWS Clean Rooms 可以根據隱含轉換規則轉換其他數據類型。

整數 (選用)

整數,表示精確度的小數位數 (任一方向)。如果未提供整數,數字會截斷為整數;如果指定整數,數字會截斷至指定的小數位數。

timestamp

該函數還可以從時間戳返回日期。(要返回時間戳值00:00:00作為時間,請將函數結果轉換為時間戳。)

傳回類型

TRUNC 會傳回與第一個輸入引數相同的資料類型。對於時間戳記,TRUNC 會傳回一個日期。

範例

截斷給定銷售交易的已付佣金。

select commission, trunc(commission) from sales where salesid=784; commission | trunc -----------+------- 111.15 | 111 (1 row)

將同一個佣金值截斷至第一位小數。

select commission, trunc(commission,1) from sales where salesid=784; commission | trunc -----------+------- 111.15 | 111.1 (1 row)

以第二個引數的負值截斷佣金;111.15 捨去到 110

select commission, trunc(commission,-1) from sales where salesid=784; commission | trunc -----------+------- 111.15 | 110 (1 row)

返回從 SYSDATE 函數(返回一個時間戳)的結果的日期部分:

select sysdate; timestamp ---------------------------- 2011-07-21 10:32:38.248109 (1 row) select trunc(sysdate); trunc ------------ 2011-07-21 (1 row)

要套用到 TIMESTAMP 欄位的 TRUNC 函數。傳回類型為日期。

select trunc(starttime) from event order by eventid limit 1; trunc ------------ 2008-01-25 (1 row)