SQL辞典

【SQL算術関数】ROUND – 四捨五入を行う(まるめる)(Oracle、SQL Server)

投稿日:2009年9月11日 更新日:

ROUND関数は数値を四捨五入する関数ですが、MS SQLとOracleでは若干使い方が違います。OracleではROUND関数の引数に指定した数値を四捨五入しますが、MS SQLの場合は四捨五入するか切り捨てるかの指定を行う必要があります。つまり、MS SQLの場合はROUND関数はOracleのTRUNC関数と同じ機能を持つことになります。

文法:

ROUND(value, d [, type] )   SQL Server
ROUND(value [, d] )      Oracle

SQL Serverの場合、typeに従ってvalueの値をdで指定した小数点以下の桁数で四捨五入もしくは切り捨てる。typeに0以外の数値を指定すると、ROUND関数は切り捨てした値を返す。
Oracleの場合、dで指定した小数点以下の桁数で四捨五入する。

使用例:テストの平均点を四捨五入する。(SQL Server)

SELECT score, ROUND(score, 0) FROM tbScoreTable;

score     ROUND(score, 0)
———————————————–
40.323    40.000
63.678    64.000
89.835    90.000

使用例:テストの平均点を小数点2桁まで残して四捨五入する。(Oracle)

SELECT score, ROUND(score, 2) FROM tbScoreTable;

score     ROUND(score, 2)
———————————————-
40.323    40.320
63.678    63.680
89.835    89.840

使用例:テストの平均点を小数点1ケタを残して切り捨てる(SQL Server)

SELECT score, ROUND(score, 1, 1) FROM tbScoreTable;

score     ROUND(score, 1, 1)
———————————————
40.323    40.300
63.678    63.600
89.835    89.800

SQLコマンド辞典に戻る

広告

広告

-SQL辞典


comment

関連記事

no image

【SQL算術関数】ABS – 絶対値を取得する(Oracle、SQL Server)

OracleやSQL Serverでは、ABS関数を使って数値の絶対値を求める事が出来ます。 文法: ABS(value) valueの絶対値を求める 使用例:夫婦の年齢差を求める。 SELECT h …

no image

【SQL算術関数】POWER – べき乗を求める (Oracle、SQL Server)

OracleやSQL Serverでnのm乗のようなべき乗を求めるには、POWER関数を使います。 文法: POWER(n, m) nのm乗をした数値を返す。 使用例:xのy乗を求める SELECT …

no image

【SQL変換関数】COALESCE – NULL値でない最初の引数を返す(Oracle、SQL Server)

COALESCE関数は複数の引数を持ち、その引数を最初から評価して最初にNULL値でない引数を返します。難しそうですが、例を見ると使い方が簡単な関数だという事がわかります。COALESCE関数はOra …

no image

【SQL日付関数】CURRENT_DATE – 現在の日付を取得する(Oracle)

OracleではCURRENT_DATE関数を使って現在の日付を取得する事ができます。OracleにはSYSDATE関数でも現在の日付を取得する事ができます。CURRENT_DATE関数には括弧は不要 …

no image

【SQL文字列関数】LTRIM – 文字列の左(先頭)から空白文字を削除(Oracle、SQL Server)

OracleやSQL Serverで文字列の左(先頭)から空白(スペース)文字を削除するにはLTRIM関数を使用します。 構文: LTRIM(word) wordで指定した文字列の左側から空白文字を削 …

広告

転職