| description | SIGN (Transact-SQL) | |||||||
|---|---|---|---|---|---|---|---|---|
| title | SIGN (Transact-SQL) | Microsoft Docs | |||||||
| ms.custom | ||||||||
| ms.date | 03/03/2017 | |||||||
| ms.prod | sql | |||||||
| ms.prod_service | database-engine, sql-database, sql-data-warehouse, pdw | |||||||
| ms.reviewer | ||||||||
| ms.technology | t-sql | |||||||
| ms.topic | reference | |||||||
| f1_keywords |
|
|||||||
| dev_langs |
|
|||||||
| helpviewer_keywords |
|
|||||||
| ms.assetid | c3a98b52-6fbe-4127-a5c9-8a4922e83e28 | |||||||
| author | julieMSFT | |||||||
| ms.author | jrasnick | |||||||
| monikerRange | >=aps-pdw-2016||=azuresqldb-current||=azure-sqldw-latest||>=sql-server-2016||>=sql-server-linux-2017||=azuresqldb-mi-current |
[!INCLUDE sql-asdb-asdbmi-asa-pdw]
Returns the positive (+1), zero (0), or negative (-1) sign of the specified expression.
Transact-SQL Syntax Conventions
SIGN ( numeric_expression )
[!INCLUDEsql-server-tsql-previous-offline-documentation]
numeric_expression
Is an expression of the exact numeric or approximate numeric data type category, except for the bit data type.
| Specified expression | Return type |
|---|---|
| bigint | bigint |
| int/smallint/tinyint | int |
| money/smallmoney | money |
| numeric/decimal | numeric/decimal |
| Other types | float |
The following example returns the SIGN values of numbers from -1 to 1.
DECLARE @value REAL
SET @value = -1
WHILE @value < 2
BEGIN
SELECT SIGN(@value)
SET NOCOUNT ON
SELECT @value = @value + 1
SET NOCOUNT OFF
END
SET NOCOUNT OFF
GO [!INCLUDEssResult]
(1 row(s) affected)
------------------------
-1.0
(1 row(s) affected)
------------------------
0.0
(1 row(s) affected)
------------------------
1.0
(1 row(s) affected)
The following example returns the SIGN values of three numbers.
SELECT SIGN(-125), SIGN(0), SIGN(564); [!INCLUDEssResult]
----- ----- -----
-1 0 1