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

कैसे TRUNCATE () मारियाडीबी में काम करता है

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

सिंटैक्स

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

TRUNCATE(X,D)

जहां X छोटा करने का मान है, और D निर्दिष्ट करता है कि इसे कितने दशमलव स्थानों तक छोटा करना है।

उदाहरण

यहां एक उदाहरण दिया गया है:

SELECT TRUNCATE(1.25817, 2);

परिणाम:

+----------------------+
| TRUNCATE(1.25817, 2) |
+----------------------+
|                 1.25 |
+----------------------+

यहाँ कुछ और हैं:

SELECT 
    TRUNCATE(1.25817, 1),
    TRUNCATE(1.25817, 2),
    TRUNCATE(1.25817, 3),
    TRUNCATE(1.25817, 4);

परिणाम (ऊर्ध्वाधर आउटपुट का उपयोग करके):

TRUNCATE(1.25817, 1): 1.2
TRUNCATE(1.25817, 2): 1.25
TRUNCATE(1.25817, 3): 1.258
TRUNCATE(1.25817, 4): 1.2581

नकारात्मक दशमलव स्थान

यदि आवश्यक हो तो दूसरा तर्क ऋणात्मक मान हो सकता है। ऋणात्मक मान पास करने से अंक बाईं ओर हो जाते हैं दशमलव स्थान का शून्य हो जाना।

उदाहरण:

SELECT TRUNCATE(5824.17, -2);

परिणाम:

+-----------------------+
| TRUNCATE(5824.17, -2) |
+-----------------------+
|                  5800 |
+-----------------------+

की तुलना में ROUND()

TRUNCATE() फ़ंक्शन ROUND() . से भिन्न है समारोह। ROUND() फ़ंक्शन कुछ उदाहरणों में संख्या को ऊपर और दूसरों में नीचे की ओर गोल करता है। TRUNCATE() दूसरी ओर, फ़ंक्शन, बिना गोल किए केवल संख्या को छोटा कर देता है।

इस अंतर को प्रदर्शित करने के लिए यहां एक तुलना है:

SELECT 
    TRUNCATE(3.6789, 2),
    ROUND(3.6789, 2);

परिणाम:

+---------------------+------------------+
| TRUNCATE(3.6789, 2) | ROUND(3.6789, 2) |
+---------------------+------------------+
|                3.67 |             3.68 |
+---------------------+------------------+

यह FLOOR() . से भी अलग है फ़ंक्शन, जो सबसे बड़ा पूर्णांक मान देता है जो इसके तर्क से अधिक नहीं है। FLOOR() ROUND() . जैसे दूसरे तर्क को स्वीकार नहीं करता है और TRUNCATE() do (यह वैसे भी केवल एक पूर्णांक लौटाता है)।

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

जब हम एक गैर-संख्यात्मक तर्क प्रदान करते हैं तो यहां क्या होता है:

SELECT TRUNCATE('Ten', 'Two');

परिणाम:

+------------------------+
| TRUNCATE('Ten', 'Two') |
+------------------------+
|                      0 |
+------------------------+
1 row in set, 3 warnings (0.000 sec)

आइए चेतावनी देखें:

SHOW WARNINGS;

परिणाम:

+---------+------+------------------------------------------+
| Level   | Code | Message                                  |
+---------+------+------------------------------------------+
| Warning | 1292 | Truncated incorrect INTEGER value: 'Two' |
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Ten'  |
| Warning | 1292 | Truncated incorrect INTEGER value: 'Two' |
+---------+------+------------------------------------------+

अवैध तर्क गणना

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

SELECT TRUNCATE();

परिणाम:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1
पर ')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।

और:

SELECT TRUNCATE(1, 2, 3);

परिणाम:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1
पर '3)' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मारियाडीबी में ADD_MONTHS () कैसे काम करता है

  2. कैसे सही () मारियाडीबी में काम करता है

  3. MySQL गैलेरा क्लस्टर और ग्लस्टरएफएस के साथ अत्यधिक उपलब्ध नेक्स्टक्लाउड को तैनात करना

  4. कैसे INSTR () मारियाडीबी में काम करता है

  5. मारियाडीबी दिनांक और समय कार्य (पूरी सूची)