ABS (Transact-SQL)ABS (Transact-SQL)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) はいAzure SQL データベースAzure SQL DatabaseYesAzure SQL データベースAzure SQL Database はいAzure SQL Managed InstanceAzure SQL Managed InstanceYesAzure SQL Managed InstanceAzure SQL Managed Instance はいAzure Synapse AnalyticsAzure Synapse AnalyticsyesAzure Synapse AnalyticsAzure Synapse Analytics はいParallel Data WarehouseParallel Data WarehouseyesParallel Data WarehouseParallel Data Warehouse

指定した数値式の絶対値 (正値) を返す数学関数です。A mathematical function that returns the absolute (positive) value of the specified numeric expression. (ABS は、負の値を正の値を変更します (ABS changes negative values to positive values. ABS は、0 または正の値には影響しません)。ABS has no effect on zero or positive values.)

トピック リンク アイコン Transact-SQL 構文表記規則Topic link icon Transact-SQL Syntax Conventions

構文Syntax

ABS ( numeric_expression )  

注意

SQL Server 2014 以前の Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

引数Arguments

numeric_expressionnumeric_expression
真数のデータ型または概数のデータ型の式を指定します。An expression of the exact numeric or approximate numeric data type category.

戻り値の型Return Types

numeric_expression と同じ型を返します。Returns the same type as numeric_expression.

Examples

次の例では、3 つの異なる値に対して ABS 関数を使用した結果を示します。This example shows the results of using the ABS function on three different numbers.

SELECT ABS(-1.0), ABS(0.0), ABS(1.0);  

結果セットは次のようになります。Here is the result set.

---- ---- ----  
1.0  .0   1.0  

ABS 関数では、数値の絶対値が指定のデータ型で表現できる最大値を超えている場合に、オーバーフロー エラーを生成することができます。The ABS function can produce an overflow error when the absolute value of a number exceeds the largest number that the specified data type can represent. たとえば、int データ型の値の範囲が -2,147,483,648 から 2,147,483,647 だとします。For example, the int data type has a value range from -2,147,483,648 to 2,147,483,647. 符号付き整数 -2,147,483,648 の絶対値を計算すると、int データ型の正数範囲の上限を超えるため、オーバーフロー エラーが発生します。Computing the absolute value for the signed integer -2,147,483,648 will cause an overflow error because its absolute value exceeds the positive range limit for the int data type.

DECLARE @i INT;  
SET @i = -2147483648;  
SELECT ABS(@i);  
GO  

次のエラー メッセージが返されます。Returns this error message:

"メッセージ 8115、レベル 16、状態 2、行 3""Msg 8115, Level 16, State 2, Line 3"

"式をデータ型 int に変換中に演算のオーバーフロー エラーが発生しました""Arithmetic overflow error converting expression to data type int."

関連項目See also

CAST および CONVERT (Transact-SQL)CAST and CONVERT (Transact-SQL)
データ型 (Transact-SQL)Data Types (Transact-SQL)
数学関数 (Transact-SQL)Mathematical Functions (Transact-SQL)
組み込み関数 (Transact-SQL)Built-in Functions (Transact-SQL)