Bagikan melalui


POWER (Transact-SQL)

Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric

Mengembalikan nilai dari ekspresi yang ditentukan ke daya yang ditentukan.

Konvensi sintaks transact-SQL

Sintaks

POWER ( float_expression , y )  

Argumen

float_expression
Adalah ekspresi jenis float atau jenis yang dapat dikonversi secara implisit ke float.

y
Adalah kekuatan untuk meningkatkan float_expression. y dapat menjadi ekspresi dari kategori jenis data numerik atau perkiraan numerik yang tepat, kecuali untuk jenis data bit .

Jenis Kembalian

Jenis pengembalian tergantung pada jenis input float_expression:

Jenis input Tipe hasil
float, nyata float
desimal(p, s) desimal(38, dtk)
int, smallint, tinyint int
bigint bigint
uang, smallmoney uang
bit, char, nchar, varchar, nvarchar float

Jika hasilnya tidak pas dalam jenis pengembalian, kesalahan luapan aritmatika terjadi.

Contoh

J. Menggunakan POWER untuk mengembalikan kubus angka

Contoh yang ditunjukkan berikut ini menaikkan angka ke daya 3 (kubus angka).

DECLARE @input1 FLOAT;  
DECLARE @input2 FLOAT;  
SET @input1= 2;  
SET @input2 = 2.5;  
SELECT POWER(@input1, 3) AS Result1, POWER(@input2, 3) AS Result2;  

Berikut set hasilnya.

Result1                Result2  
---------------------- ----------------------  
8                      15.625  
  
(1 row(s) affected)  

B. Menggunakan POWER untuk menampilkan hasil konversi jenis data

Contoh berikut menunjukkan bagaimana float_expression mempertahankan jenis data yang dapat mengembalikan hasil yang tidak terduga.

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  

Berikut set hasilnya.

FloatResult            IntegerResult IntegerResult Decimal1Result Decimal2Result Decimal2Result  
---------------------- ------------- ------------- -------------- -------------- --------------  
7.88860905221012E-31   0             0             0.0            0.00           0.00  

C. Menggunakan POWER

Contoh berikut mengembalikan POWER hasil untuk 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  

Berikut set hasilnya.

-----------   
2             
  
(1 row(s) affected)  
  
-----------   
4             
  
(1 row(s) affected)  
  
-----------   
8             
  
(1 row(s) affected)  
  
-----------   
16            
  
(1 row(s) affected)  

Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)

D: Menggunakan POWER untuk mengembalikan kubus angka

Contoh berikut menunjukkan hasil POWER untuk 2.0 ke daya ke-3.

SELECT POWER(2.0, 3);  

Berikut set hasilnya.

------------ 
8.0

Lihat Juga

desimal dan numerik (Transact-SQL)
float dan real (Transact-SQL)
int, bigint, smallint, dan tinyint (Transact-SQL)
Fungsi Matematika (SQL Transact)
uang dan smallmoney (Transact-SQL)