SQL道場 算術関数 TRUNC/TRUNCATE関数
SQLで切り捨てをするTRUNC/TRUNCATE関数について記載しています。
対応データベース: MySQL Oracle PostgreSQL DB2
TRUNC/TRUNCATE関数の文法
SELECT TRUNC(数値, 桁数) FROM テーブル
SELECT TRUNC(日付, 日付書式) FROM テーブル
SELECT TRUNCATE(数値, 桁数) FROM テーブル
引数 | 数値 | 数値型 数値(任意の数) | |||||||||||
桁数 | 整数型 数値(DB2は必須) | ||||||||||||
日付 | 丸める位置を書式モデルで指定する。 ※Oracleのみ対応 | ||||||||||||
日付 書式 |
※Oracleのみ対応 | ||||||||||||
返値 | 数値型 切り捨て後の値 |
TRUNC関数は指定された値の小数点以下を切り捨てます。桁数に小数点以下の何桁を有効にして切り捨てるかを指定することができます。Oracleでは日付を切り捨てることもできます。MySQL、DB2ではk多数の省略はできません。
実行例
MySQLの実行例
/* MySQL 切り捨てのサンプル */
SELECT
TRUNCATE(1.653,1) as TRUNCATE_value1 /* 正の少数第1位前を切り捨てる */
,TRUNCATE(-1.653,1) as TRUNCATE_value2 /* 負の少数第1位前を切り捨てる */
,TRUNCATE(0,1) as TRUNCATE_value3 /* ゼロの少数第1位を切り捨てる */
;