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

मारियाडीबी में TRIM () और TRIM_ORACLE () के बीच अंतर

मारियाडीबी में एक TRIM() है फ़ंक्शन और एक TRIM_ORACLE() समारोह। दोनों कार्य अनिवार्य रूप से एक ही काम करते हैं। लेकिन एक छोटा सा अंतर है।

अंतर

अंतर यह है कि प्रत्येक फ़ंक्शन खाली स्ट्रिंग्स से कैसे निपटता है:

  • TRIM() एक स्ट्रिंग के प्रारंभ या अंत से वर्णों को हटा देता है। जब एक खाली स्ट्रिंग पास की जाती है, तो परिणाम इस बात पर निर्भर करेगा कि आप Oracle मोड में हैं या नहीं। यदि Oracle मोड में है, तो यह null returns लौटाता है . अन्यथा यह एक खाली स्ट्रिंग देता है।
  • TRIM_ORACLE() TRIM() . के Oracle मोड संस्करण का पर्याय है . यह TRIM() . जैसा व्यवहार करता है Oracle मोड में (यह null लौटाता है) जब एक खाली स्ट्रिंग पास की गई), तब भी जब Oracle मोड में न हो।

तो TRIM_ORACLE() बिल्कुल TRIM() . की तरह काम करता है जब ओरेकल मोड में। लेकिन जब Oracle मोड में नहीं होता है, तो फर्क सिर्फ इतना होता है कि प्रत्येक फंक्शन खाली स्ट्रिंग्स से कैसे निपटता है।

उदाहरण

इसे एक उदाहरण से सबसे अच्छी तरह समझाया गया है।

डिफ़ॉल्ट मोड

डिफ़ॉल्ट मोड में इन कार्यों की तुलना यहां दी गई है:

SET SQL_MODE=DEFAULT;
SELECT
    TRIM(''),
    TRIM_ORACLE('');

परिणाम:

+----------+-----------------+
| TRIM('') | TRIM_ORACLE('') |
+----------+-----------------+
|          | NULL            |
+----------+-----------------+

सबसे पहले, मैंने अपने सिस्टम को डिफ़ॉल्ट मोड पर सेट किया (भले ही यह शायद पहले से ही डिफ़ॉल्ट मोड में था), फिर मैंने दोनों कार्यों को एक खाली स्ट्रिंग के साथ चलाया।

हम देख सकते हैं कि TRIM() एक खाली स्ट्रिंग देता है, जबकि TRIM_ORACLE() रिटर्न null

Oracle मोड

अब इसे Oracle मोड पर सेट करते हैं और कोड को फिर से चलाते हैं:

SET SQL_MODE=ORACLE;
SELECT
    TRIM(''),
    TRIM_ORACLE('');

परिणाम:

+----------+-----------------+
| TRIM('') | TRIM_ORACLE('') |
+----------+-----------------+
| NULL     | NULL            |
+----------+-----------------+

हम देख सकते हैं कि TRIM() अब TRIM_ORACLE() की तरह व्यवहार करता है ।

तो, TRIM() . के साथ , इससे पहले कि हम इसे TRIM() के Oracle संस्करण की तरह व्यवहार करें, हमें स्पष्ट रूप से Oracle मोड में स्विच करना होगा ।

TRIM_ORACLE() दूसरी ओर, सभी मोड में उपलब्ध है, इसलिए यह हमें Oracle मोड में स्विच करने से बचाता है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Amazon RDS पॉइंट-इन-टाइम रिकवरी की तुलना ClusterControl से करना

  2. MySQL या MariaDB गैलेरा क्लस्टर में प्रतिकृति प्रदर्शन में सुधार कैसे करें

  3. मारियाडीबी में एक तिथि से लघु माह का नाम प्राप्त करने के 2 तरीके

  4. मारियाडीबी में डेटाटाइम में एक घंटा जोड़ने के 8 तरीके

  5. मारियाडीबी में डेटाटाइम वैल्यू में सेकेंड जोड़ने के 8 तरीके