Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle में POWER () फंक्शन

Oracle में, POWER() फ़ंक्शन अपने पहले तर्क को उसके दूसरे तर्क की शक्ति तक बढ़ा देता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

POWER(n2, n1)

प्रत्येक तर्क कोई भी संख्यात्मक डेटा प्रकार या कोई गैर-संख्यात्मक डेटा प्रकार हो सकता है जिसे परोक्ष रूप से एक संख्यात्मक डेटा प्रकार में परिवर्तित किया जा सकता है।

दोनों तर्क कोई भी संख्या हो सकते हैं, हालांकि, यदि n2 ऋणात्मक है, तो n1 एक पूर्णांक होना चाहिए।

उदाहरण

प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:

SELECT POWER(8, 2) 
FROM DUAL;

परिणाम:

   POWER(8,2) 
_____________ 
           64 

और यहाँ यह दूसरे तर्क में भिन्नात्मक भाग का उपयोग कर रहा है:

SELECT POWER(8, 2.5) 
FROM DUAL;

परिणाम:

                              POWER(8,2.5) 
__________________________________________ 
   181.01933598375616624661615669884135406 

हालाँकि, भिन्नात्मक भाग का उपयोग केवल तभी संभव है जब पहला तर्क सकारात्मक हो।

नकारात्मक मान

जैसा कि उल्लेख किया गया है, यदि पहला तर्क नकारात्मक है, तो दूसरा तर्क एक पूर्णांक होना चाहिए:

SELECT POWER(-8, 2) 
FROM DUAL;

परिणाम:

   POWER(-8,2) 
______________ 
            64 

जब दूसरी संख्या एक पूर्णांक न हो तो क्या होता है:

SELECT POWER(-8, 2.5) 
FROM DUAL;

परिणाम:

Error starting at line : 1 in command -
SELECT POWER(-8, 2.5) 
FROM DUAL
Error report -
ORA-01428: argument '-8' is out of range

गैर-संख्यात्मक तर्क

तर्क कोई भी संख्यात्मक डेटा प्रकार या कोई गैर-संख्यात्मक डेटा प्रकार हो सकता है जिसे परोक्ष रूप से एक संख्यात्मक डेटा प्रकार में परिवर्तित किया जा सकता है।

जब तर्क उस मानदंड को पूरा नहीं करते हैं तो क्या होता है इसका एक उदाहरण यहां दिया गया है:

SELECT POWER('Gosh', 'Dang')
FROM DUAL;

परिणाम:

Error starting at line : 1 in command -
SELECT POWER('Gosh', 'Dang')
FROM DUAL
Error report -
ORA-01722: invalid number

अशक्त तर्क

POWER() रिटर्न null यदि कोई तर्क null है :

SET NULL 'null';

SELECT 
    POWER(null, 3),
    POWER(8, null),
    POWER(null, null)
FROM DUAL;

परिणाम:

   POWER(NULL,3)    POWER(8,NULL)    POWER(NULL,NULL) 
________________ ________________ ___________________ 
            null             null                null 

डिफ़ॉल्ट रूप से, SQLcl और SQL*Plus जब भी SQL SELECT के परिणामस्वरूप एक रिक्त मान उत्पन्न होता है तो एक रिक्त स्थान लौटाता है बयान।

हालांकि, आप SET NULL . का उपयोग कर सकते हैं वापस करने के लिए एक अलग स्ट्रिंग निर्दिष्ट करने के लिए। यहाँ मैंने निर्दिष्ट किया है कि स्ट्रिंग null वापस किया जाना चाहिए।

अनुपलब्ध तर्क

कॉलिंग POWER() बिना किसी तर्क के त्रुटि उत्पन्न होती है:

SELECT POWER()
FROM DUAL;

परिणाम:

Error starting at line : 1 in command -
SELECT POWER()
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:

और यही बात बहुत अधिक तर्कों के साथ कॉल करने पर भी लागू होती है:

SELECT POWER(10, 2, 3)
FROM DUAL;

परिणाम:

Error starting at line : 1 in command -
SELECT POWER(10, 2, 3)
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. Oracle के लिए JDBC का उपयोग करके ResultSet को पुनरावृत्त करने में लगभग 16s में बहुत समय लगता है?

  2. किसी अन्य कॉलम द्वारा समूहीकृत किसी भिन्न स्तंभ के अधिकतम के आधार पर मान प्राप्त करें

  3. वर्ग में प्रत्येक समूह की पहली पंक्ति का चयन करें

  4. पेंटाहो डेटा इंटीग्रेशन (केटल) कम्युनिटी एडिशन से Oracle 12c डेटाबेस से कनेक्ट करना

  5. NLS_CHARSET_DECL_LEN () Oracle में फ़ंक्शन