Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
Azure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка SQL аналитики в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в Microsoft Fabric
Возвращает значение определенного выражения в определенной степени.
Соглашения о синтаксисе Transact-SQL
Синтаксис
POWER ( float_expression , y )
Аргументы
float_expression
Выражение типа float или типа, который может быть неявно преобразован в тип float.
г
Степень, в которую возводится аргумент float_expression.
y — выражение категории точного числового или приблизительного числового типа данных, за исключением типа данных bit.
Типы возвращаемых данных
Тип возвращаемого значения зависит от типа входных данных float_expression:
| Тип Ввода | Возвращаемый тип |
|---|---|
| Плавающий, настоящий | float |
| Десятичная(p, s) | Десятичная система (38, с) |
| int, smallint, tinyint | int |
| bigint | bigint |
| деньги, маленькие деньги | money |
| бит, чар, нчар, варчар, нварчар | float |
Если результат по размеру не соответствует типу возвращаемого значения, происходит ошибка арифметического переполнения.
Примеры
А. Использование функции POWER для возврата куба числа
Следующий пример демонстрирует возведение числа в степень 3 (в куб).
DECLARE @input1 FLOAT;
DECLARE @input2 FLOAT;
SET @input1= 2;
SET @input2 = 2.5;
SELECT POWER(@input1, 3) AS Result1, POWER(@input2, 3) AS Result2;
Вот результирующий набор.
Result1 Result2
---------------------- ----------------------
8 15.625
(1 row(s) affected)
B. Использование функции POWER для вывода результатов преобразования типов данных
В приведенном ниже примере показано, как float_expression сохраняет тип данных, который может возвращать непредвиденные результаты.
SELECT
POWER(CAST(2.0 AS FLOAT), -100.0) AS FloatResult,
POWER(2, -100.0) AS IntegerResult,
POWER(CAST(2.0 AS INT), -100.0) AS IntegerResult,
POWER(2.0, -100.0) AS Decimal1Result,
POWER(2.00, -100.0) AS Decimal2Result,
POWER(CAST(2.0 AS DECIMAL(5,2)), -100.0) AS Decimal2Result;
GO
Вот результирующий набор.
FloatResult IntegerResult IntegerResult Decimal1Result Decimal2Result Decimal2Result
---------------------- ------------- ------------- -------------- -------------- --------------
7.88860905221012E-31 0 0 0.0 0.00 0.00
В. Применение функции POWER
В следующем примере показаны результаты применения функции POWER для 2.
DECLARE @value INT, @counter INT;
SET @value = 2;
SET @counter = 1;
WHILE @counter < 5
BEGIN
SELECT POWER(@value, @counter)
SET NOCOUNT ON
SET @counter = @counter + 1
SET NOCOUNT OFF
END;
GO
Вот результирующий набор.
-----------
2
(1 row(s) affected)
-----------
4
(1 row(s) affected)
-----------
8
(1 row(s) affected)
-----------
16
(1 row(s) affected)
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
Г. Использование функции POWER для возврата куба числа
В приведенном ниже примере показано, как функция POWER возвращает значение 2.0, возведенное в третью степень.
SELECT POWER(2.0, 3);
Вот результирующий набор.
------------
8.0
См. также
десятичная и числовая (Transact-SQL)
float и real (Transact-SQL)
int, bigint, smallint и tinyint (Transact-SQL)
Математические функции (Transact-SQL)
деньги и мелочь (Transact-SQL)