Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Hàm EXP () trong Oracle

Trong Oracle, EXP() hàm trả về giá trị của e (cơ sở của logarit tự nhiên) được nâng lên thành sức mạnh của đối số.

Số e , còn được gọi là số Euler, là một hằng số toán học xấp xỉ bằng 2,71828.

Cú pháp

Cú pháp như sau:

EXP(n)

Ở đâu n là bất kỳ kiểu dữ liệu số hoặc bất kỳ kiểu dữ liệu phi số nào có thể được chuyển đổi hoàn toàn sang kiểu dữ liệu số.

Ví dụ

Đây là một ví dụ:

SELECT EXP(5)
FROM DUAL;

Kết quả:

                                     EXP(5) 
___________________________________________ 
   148.413159102576603421115580040552279624

Chúng tôi có thể nhận được giá trị của e bằng cách chuyển 1:

SELECT EXP(1)
FROM DUAL;

Kết quả:

                                     EXP(1) 
___________________________________________ 
   2.71828182845904523536028747135266249776

Phân số

Đối số có thể chứa một phần phân số:

SELECT EXP(3.1434178)
FROM DUAL;

Kết quả:

                              EXP(3.1434178) 
____________________________________________ 
   23.18296635099516749674346410871112767972

Giá trị phủ định

Đối số có thể là phủ định:

SELECT EXP(-5)
FROM DUAL;

Kết quả:

                                        EXP(-5) 
_______________________________________________ 
   0.006737946999085467096636048423148424248801 

Biểu thức

Đối số có thể bao gồm các biểu thức như sau:

SELECT EXP(2 * 3)
FROM DUAL;

Kết quả:

                                   EXP(2*3) 
___________________________________________ 
   403.428793492735122608387180543388279609 

Đối số không phải dạng số

Đối số có thể là bất kỳ kiểu dữ liệu số hoặc bất kỳ kiểu dữ liệu không phải số nào có thể được chuyển đổi hoàn toàn thành kiểu dữ liệu số.

Dưới đây là một ví dụ về điều gì sẽ xảy ra khi đối số không đáp ứng tiêu chí đó:

SELECT EXP('Cat')
FROM DUAL;

Kết quả:

Error starting at line : 1 in command -
SELECT EXP('Cat')
FROM DUAL
Error report -
ORA-01722: invalid number

Đối số rỗng

EXP() trả về null nếu đối số là null :

SET NULL 'null';

SELECT EXP(null)
FROM DUAL;

Kết quả:

   EXP(NULL) 
____________ 
        null

Theo mặc định, SQLcl và SQL * Plus trả về một khoảng trống bất cứ khi nào giá trị null xảy ra do một SELECT trong SQL tuyên bố.

Tuy nhiên, bạn có thể sử dụng SET NULL để chỉ định một chuỗi khác được trả về. Ở đây tôi đã chỉ định rằng chuỗi null nên được trả lại.

Thiếu đối số

Gọi EXP() với số lượng đối số sai hoặc không có bất kỳ đối số nào dẫn đến lỗi:

SELECT EXP()
FROM DUAL;

Kết quả:

Error starting at line : 1 in command -
SELECT EXP()
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"
*Cause:    
*Action:

Và:

SELECT EXP(10, 2)
FROM DUAL;

Kết quả:

Error starting at line : 1 in command -
SELECT EXP(10, 2)
FROM DUAL
Error at Command Line : 1 Column : 8
Error report -
SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"
*Cause:    
*Action:

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chia varchar thành các cột riêng biệt trong Oracle

  2. Oracle SQL trả về các hàng theo kiểu tùy ý khi không có mệnh đề thứ tự nào được sử dụng

  3. Thiết kế ngược mô hình dữ liệu bằng Oracle SQL Developer

  4. Làm thế nào để giới hạn kết quả trong Oracle

  5. Cân nhắc về hiệu suất cho dữ liệu tạm thời trong Oracle