Oracle डाटाबेस में, GREATEST()
फ़ंक्शन एक या अधिक अभिव्यक्तियों की सूची में सबसे बड़ा देता है।
सिंटैक्स
वाक्य रचना इस प्रकार है:
GREATEST(expr [, expr ]...)
पहला expr
वापसी प्रकार निर्धारित करने के लिए प्रयोग किया जाता है:
- अगर पहला
expr
संख्यात्मक है, तो Oracle उच्चतम संख्यात्मक पूर्वता के साथ तर्क को निर्धारित करता है, परोक्ष रूप से शेष तर्कों को तुलना से पहले उस डेटा प्रकार में परिवर्तित करता है, और उस डेटा प्रकार को लौटाता है। - अगर पहला
expr
है नहीं संख्यात्मक, फिर प्रत्येकexpr
पहले के बाद परोक्ष रूप से पहले के डेटा प्रकार में परिवर्तित हो जाता हैexpr
तुलना से पहले।
उदाहरण
यहां एक उदाहरण दिया गया है:
SELECT GREATEST('a', 'b', 'c')
FROM DUAL;
परिणाम:
c
यहाँ कुछ और हैं:
SELECT
GREATEST('A', 'a') AS "r1",
GREATEST('Cat', 'Dog', 'Dot') AS "r2",
GREATEST(1, 2, 3) AS "r3",
GREATEST(1, '2', 3) AS "r4",
GREATEST('Cat', '2001-12-31') AS "r5"
FROM DUAL;
परिणाम:
r1 r2 r3 r4 r5 _____ ______ _____ _____ ______ a Dot 3 3 Cat
अभिव्यक्ति
तर्कों में इस तरह के भाव शामिल हो सकते हैं:
SELECT GREATEST(2 * 3, 1 * 3)
FROM DUAL;
परिणाम:
6
तारीख
यहां दिनांक स्ट्रिंग की तुलना है:
SELECT GREATEST(DATE '2020-01-01', DATE '2021-01-01')
FROM DUAL;
परिणाम:
01-JAN-21
दिनांक वर्तमान सत्र के दिनांक स्वरूप में लौटा दी गई है। देखें कि वर्तमान सत्र के दिनांक प्रारूप की जांच कैसे करें।
शून्य मान
यदि कोई तर्क null
है , परिणाम null
. है :
SET NULL 'null';
SELECT
GREATEST(null, 2),
GREATEST(1, null)
FROM DUAL;
परिणाम:
GREATEST(NULL,2) GREATEST(1,NULL) ___________________ ___________________ null null
डिफ़ॉल्ट रूप से, SQLcl और SQL*Plus जब भी SQL SELECT
के परिणामस्वरूप एक रिक्त मान उत्पन्न होता है तो एक रिक्त स्थान लौटाता है बयान।
हालांकि, आप SET NULL
. का उपयोग कर सकते हैं वापस करने के लिए एक अलग स्ट्रिंग निर्दिष्ट करने के लिए। यहाँ मैंने निर्दिष्ट किया है कि स्ट्रिंग null
लौटाया जाना चाहिए।
अवैध तर्क गणना
कॉलिंग GREATEST()
बिना किसी तर्क के त्रुटि उत्पन्न होती है:
SELECT GREATEST()
FROM DUAL;
परिणाम:
SQL Error: ORA-00938: not enough arguments for function 00938. 00000 - "not enough arguments for function"
आप LEAST()
. का भी उपयोग कर सकते हैं एक या अधिक अभिव्यक्तियों की सूची में से कम से कम वापस करने के लिए।