Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
Azure Synapse Analytics
Elemzési platformrendszer (PDW)
SQL Analytics-végpont a Microsoft Fabricben
Raktár a Microsoft Fabricben
SQL-adatbázis a Microsoft Fabricben
A megadott kifejezés értékét a megadott hatványhoz adja vissza.
Transact-SQL szintaxis konvenciók
Szemantika
POWER ( float_expression , y )
Arguments
float_expression
A floattípusú kifejezés, vagy olyan típus, amely implicit módon átalakítható float-ra.
y
Az a hatalom, amelyre float_expression felemelhetünk.
y lehet a pontos numerikus vagy közelítő numerikus adattípus kifejezése, kivéve a bitadattípust .
Visszatérési típusok
A visszatérési típus a bemeneti float_expression típusától függ:
| Bemeneti típus | Visszatérési típus |
|---|---|
| lebegő, valós | float |
| tizedes (p, s) | tizedes (38, s) |
| int, smallint, tinyint | int |
| bigint | bigint |
| pénz, smallmoney | pénz |
| Bit, char, nchar, varchar, nvarchar | float |
Ha az eredmény nem illeszkedik a visszacsatoló típusba, aritmetikai túlterhelés következik be.
Példák
A. POWER segítségével visszaadjuk a szám kockáját
A következő példa bemutatja, hogyan emelünk egy számot 3-as hattusra (a szám kockája).
DECLARE @input1 FLOAT;
DECLARE @input2 FLOAT;
SET @input1= 2;
SET @input2 = 2.5;
SELECT POWER(@input1, 3) AS Result1, POWER(@input2, 3) AS Result2;
Itt van az eredmények összessége.
Result1 Result2
---------------------- ----------------------
8 15.625
(1 row(s) affected)
B. POWER használata az adattípus-átalakítás eredményeinek megjelenítésére
Az alábbi példa bemutatja, hogyan őrzi meg a float_expression azt az adattípust, amely váratlan eredményeket hozhat.
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
Itt van az eredmények összessége.
FloatResult IntegerResult IntegerResult Decimal1Result Decimal2Result Decimal2Result
---------------------- ------------- ------------- -------------- -------------- --------------
7.88860905221012E-31 0 0 0.0 0.00 0.00
C. POWER használata
A következő példa az eredményt adja POWER meg a -re.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
Itt van az eredmények összessége.
-----------
2
(1 row(s) affected)
-----------
4
(1 row(s) affected)
-----------
8
(1 row(s) affected)
-----------
16
(1 row(s) affected)
Példák: Azure Synapse Analytics and Analytics Platform System (PDW)
D: POWER segítségével visszaadjuk a szám kockáját
Az alábbi példa a harmadik hatványhoz tartozó eredményeket 2.0 mutatjaPOWER.
SELECT POWER(2.0, 3);
Itt van az eredmények összessége.
------------
8.0
Lásd még:
decimális és numerikus (Transact-SQL)
lebegő és valós (Transact-SQL)
int, bigint, smallint és tinyint (Transact-SQL)
Matematikai függvények (Transact-SQL)
pénz és kismamák (Transact-SQL)