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

राउंड () SQL सर्वर में उदाहरण

SQL सर्वर में, T-SQL ROUND() फ़ंक्शन आपको किसी संख्या को निर्दिष्ट लंबाई या सटीकता तक गोल करने की अनुमति देता है।

आप तर्क के रूप में संख्या प्रदान करते हैं, साथ ही वह लंबाई भी प्रदान करते हैं जिस पर आप संख्या को पूर्णांक बनाना चाहते हैं। फ़ंक्शन एक वैकल्पिक तीसरे तर्क को भी स्वीकार करता है जो आपको यह निर्दिष्ट करने की अनुमति देता है कि संख्या गोल है या काट दी गई है।

सिंटैक्स

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

ROUND ( numeric_expression , length [ ,function ] )  

जहाँ तर्कों की निम्नलिखित परिभाषाएँ हैं:

संख्यात्मक_अभिव्यक्ति
बिट को छोड़कर, सटीक संख्यात्मक या अनुमानित संख्यात्मक डेटा प्रकार श्रेणी की अभिव्यक्ति है डेटा प्रकार।
लंबाई
क्या वह सटीकता है जिसके लिए numeric_expression गोल किया जाना है। यह तर्क छोटा . प्रकार का व्यंजक होना चाहिए , छोटा सा , या int . जब यह एक धनात्मक संख्या हो, numeric_expression इस तर्क द्वारा निर्दिष्ट दशमलव पदों की संख्या के लिए पूर्णांकित किया जाता है। जब यह एक ऋणात्मक संख्या हो, numeric_expression जैसा कि इस तर्क द्वारा निर्दिष्ट किया गया है, दशमलव बिंदु के बाईं ओर गोल है।
फ़ंक्शन
प्रदर्शन करने के लिए ऑपरेशन का प्रकार है। यह छोटा होना चाहिए , छोटा सा , या int . जब यह तर्क छोड़ दिया जाता है या 0 (डिफ़ॉल्ट) का मान होता है, numeric_expression गोल है। जब 0 के अलावा कोई अन्य मान निर्दिष्ट किया जाता है, numeric_expression छोटा कर दिया गया है।

उदाहरण 1 - मूल उपयोग

यह फ़ंक्शन कैसे काम करता है, यह दिखाने के लिए यहां एक बुनियादी उदाहरण दिया गया है।

SELECT ROUND(1.49, 1) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 1.50     |
+----------+

इस मामले में संख्या को गोल कर दिया जाता है।

उदाहरण 2 - शून्य दशमलव स्थान

अगर हम दूसरे तर्क को शून्य पर सेट करते हैं, तो यहां क्या होता है:

SELECT ROUND(1.49, 0) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 1.00     |
+----------+

ऐसा इसलिए है क्योंकि हमने शून्य भिन्नात्मक भागों को निर्दिष्ट किया है जिसके साथ संख्या को गोल करना है।

और अगर मैं शुरुआती संख्या को 1.50 में बदल दूं तो क्या होगा:

SELECT ROUND(1.50, 0) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 2.00     |
+----------+

उदाहरण 3 - अधिक दशमलव स्थान

यहां एक उदाहरण दिया गया है जहां पूर्णांक की जाने वाली संख्या में अधिक दशमलव स्थान होते हैं।

SELECT ROUND(1.234, 2) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 1.230    |
+----------+

और यहाँ क्या होता है जब मैं अंतिम अंक को 5 तक बढ़ा देता हूँ:

SELECT ROUND(1.235, 2) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 1.240    |
+----------+

बेशक, हम कई और दशमलव स्थानों का उपयोग कर सकते हैं। उदाहरण के लिए, हम बहुत से दशमलव स्थानों को नीचे ट्रिम कर सकते हैं।

SELECT ROUND(1.23456789123456789, 8) Result;

परिणाम:

+---------------------+
| Result              |
|---------------------|
| 1.23456789000000000 |
+---------------------+

उदाहरण 4 - ट्रंकेशन (अर्थात तीसरे तर्क का उपयोग करना)

जैसा कि उल्लेख किया गया है, हम यह निर्दिष्ट करने के लिए तीसरा तर्क प्रदान कर सकते हैं कि परिणाम छोटा है या सिर्फ गोल है। पिछले उदाहरण सभी गोल हैं क्योंकि हमने तीसरा तर्क निर्दिष्ट नहीं किया है। जब हम तीसरे तर्क को छोड़ देते हैं, तो 0 के मान का उपयोग किया जाता है (जिसका अर्थ है परिणाम को गोल करना)। यदि हम 0 के अलावा कोई मान प्रदान करते हैं, तो परिणाम छोटा कर दिया जाता है।

SELECT 
  ROUND(1.236, 2) 'Rounded (by default)',
  ROUND(1.236, 2, 0) 'Rounded (explicitly)',
  ROUND(1.236, 2, 1) 'Truncated';

परिणाम:

+------------------------+------------------------+-------------+
| Rounded (by default)   | Rounded (explicitly)   | Truncated   |
|------------------------+------------------------+-------------|
| 1.240                  | 1.240                  | 1.230       |
+------------------------+------------------------+-------------+

उदाहरण 5 - दूसरे तर्क के लिए ऋणात्मक मान का उपयोग करना

यहां बताया गया है कि गैर-आंशिक भाग के कुछ हिस्सों को शून्य पर गोल करने के लिए हम दूसरे तर्क पर ऋणात्मक मान का उपयोग कैसे कर सकते हैं।

SELECT ROUND(123.456, -1) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 120.000  |
+----------+

और यहां बताया गया है कि अगर हम 3 . को बढ़ाते हैं तो यह कैसे गोल हो जाता है करने के लिए 5 या अधिक।

SELECT ROUND(125.456, -1) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 130.000  |
+----------+

आप ऐसा तब भी कर सकते हैं, जब संख्या में कोई भिन्नात्मक भाग न हो।

SELECT ROUND(125, -1) Result;

परिणाम:

+----------+
| Result   |
|----------|
| 130      |
+----------+

उदाहरण 6 - ऋणात्मक संख्याओं बनाम धनात्मक संख्याओं को पूर्णांकित करना

जैसा कि पिछले उदाहरणों में देखा गया है, धनात्मक संख्याओं का उपयोग करते समय, .5 या उससे अधिक के भिन्नात्मक भाग वाले मान को अगले पूर्णांक तक पूर्णांकित किया जाता है।

हालांकि, ऋणात्मक संख्याओं का उपयोग करते समय, ऐसे मानों को नीचे गोल किया जाता है ।

SELECT 
  ROUND(1.50, 0) Positive,
  ROUND(-1.50, 0) Negative;

परिणाम:

+------------+------------+
| Positive   | Negative   |
|------------+------------|
| 2.00       | -2.00      |
+------------+------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlServerSpatial.dll लोड करने में असमर्थ

  2. SQL सर्वर IF बनाम IIF ():क्या अंतर है?

  3. दो SQL सर्वर डेटाबेस की तुलना करने के लिए एक निःशुल्क टूल क्या है?

  4. SQL सर्वर (T-SQL उदाहरण) में 'स्मॉलडेटटाइम' को 'डेटाटाइम' में बदलें

  5. SQL सर्वर में पिछला व्हाइटस्पेस कैसे निकालें - RTRIM ()