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

कैसे TRIM () MariaDB में काम करता है

मारियाडीबी में, TRIM() एक अंतर्निहित स्ट्रिंग फ़ंक्शन है जो किसी स्ट्रिंग के प्रारंभ या अंत से वर्णों को हटाता है।

डिफ़ॉल्ट रूप से यह अग्रणी और पिछली जगहों को हटा देता है, लेकिन आप निर्दिष्ट कर सकते हैं कि कौन सा वर्ण निकालना है, साथ ही आप इसे किस पक्ष से हटाना चाहते हैं।

सिंटैक्स

TRIM() फ़ंक्शन का उपयोग निम्नानुसार किया जा सकता है:

TRIM([remstr FROM] str)

या:

TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)

जहां str किसी भी पिछली जगह को हटाने के लिए स्ट्रिंग है, और remstr निकालने के लिए स्ट्रिंग है।

अगर remstr प्रदान नहीं किया गया है, तो TRIM() रिक्त स्थान हटाता है।

उदाहरण

यहां एक बुनियादी उदाहरण दिया गया है:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM('   Caribbean Island   ') AS "Trimmed";

परिणाम:

+------------------------+------------------+
| Untrimmed              | Trimmed          |
+------------------------+------------------+
|    Caribbean Island    | Caribbean Island |
+------------------------+------------------+

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

हम यह भी देख सकते हैं कि स्ट्रिंग के भीतर का स्थान बरकरार रहता है।

BOTH तर्क

डिफ़ॉल्ट रूप से, TRIM() स्ट्रिंग के दोनों किनारों को ट्रिम करता है। हालांकि, आप स्पष्ट रूप से BOTH specify निर्दिष्ट कर सकते हैं अगर आप चाहें:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(BOTH FROM '   Caribbean Island   ') AS "Trimmed";

परिणाम:

+------------------------+------------------+
| Untrimmed              | Trimmed          |
+------------------------+------------------+
|    Caribbean Island    | Caribbean Island |
+------------------------+------------------+

हमें पिछले उदाहरण जैसा ही परिणाम मिलता है।

LEADING तर्क

LEADING निर्दिष्ट करना ट्रिम ऑपरेशन को केवल स्ट्रिंग की शुरुआत तक सीमित करता है:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(LEADING FROM '   Caribbean Island   ') AS "Trimmed";

परिणाम:

+------------------------+---------------------+
| Untrimmed              | Trimmed             |
+------------------------+---------------------+
|    Caribbean Island    | Caribbean Island    |
+------------------------+---------------------+

हम देख सकते हैं कि छंटनी की गई स्ट्रिंग के दाईं ओर रिक्त स्थान अभी भी मौजूद हैं। केवल बायां भाग काटा गया था।

TRAILING तर्क

TRAILING निर्दिष्ट करना ट्रिम ऑपरेशन को केवल स्ट्रिंग की शुरुआत तक सीमित करता है:

SELECT 
    '   Caribbean Island   ' AS "Untrimmed",
    TRIM(TRAILING FROM '   Caribbean Island   ') AS "Trimmed";

परिणाम:

+------------------------+---------------------+
| Untrimmed              | Trimmed             |
+------------------------+---------------------+
|    Caribbean Island    | Caribbean Island    |
+------------------------+---------------------+

इस बार, केवल दाहिने हिस्से को काटा गया था। छंटनी की गई स्ट्रिंग के बाईं ओर रिक्तियां अभी भी मौजूद हैं।

ट्रिम करने के लिए एक स्ट्रिंग निर्दिष्ट करें

यह निर्दिष्ट करने का एक उदाहरण है कि किस वर्ण को ट्रिम करना है:

SELECT 
    '...mountain...' AS "Untrimmed",
    TRIM('.' FROM '...mountain...') AS "Trimmed";

परिणाम:

+----------------+----------+
| Untrimmed      | Trimmed  |
+----------------+----------+
| ...mountain... | mountain |
+----------------+----------+

यह एक ही चरित्र होना जरूरी नहीं है। आप ट्रिम करने के लिए कोई भी स्ट्रिंग निर्दिष्ट कर सकते हैं:

SELECT 
    TRIM('.' FROM '.+.mountain.+.') AS "1",
    TRIM('.+' FROM '.+.mountain.+.') AS "2",
    TRIM('+.' FROM '.+.mountain.+.') AS "3",
    TRIM('.+.' FROM '.+.mountain.+.') AS "4";

परिणाम:

+--------------+--------------+--------------+----------+
| 1            | 2            | 3            | 4        |
+--------------+--------------+--------------+----------+
| +.mountain.+ | .mountain.+. | .+.mountain. | mountain |
+--------------+--------------+--------------+----------+

आप चाहें तो शब्द के कुछ हिस्से को ट्रिम भी कर सकते हैं:

SELECT TRIM('moun' FROM 'mountain');

परिणाम:

+------------------------------+
| TRIM('moun' FROM 'mountain') |
+------------------------------+
| tain                         |
+------------------------------+

हम BOTH . का भी उपयोग कर सकते हैं , LEADING और TRAILING स्ट्रिंग को ट्रिम करने के लिए निर्दिष्ट करते समय तर्क।

उदाहरण:

SELECT 
    TRIM(BOTH '.' FROM '...mountain...') AS "Both",
    TRIM(LEADING '.' FROM '...mountain...') AS "Leading",
    TRIM(TRAILING '.' FROM '...mountain...') AS "Trailaing";

परिणाम:

+----------+-------------+-------------+
| Both     | Leading     | Trailaing   |
+----------+-------------+-------------+
| mountain | mountain... | ...mountain |
+----------+-------------+-------------+

अशक्त तर्क

यदि एक null दिया गया है तर्क, परिणाम null है :

SELECT TRIM(null);

परिणाम:

+------------+
| TRIM(null) |
+------------+
| NULL       |
+------------+

Oracle मोड

जब नहीं ओरेकल मोड में चल रहा है, यदि परिणाम खाली है (यानी इसकी लंबाई शून्य है) तो परिणाम एक खाली स्ट्रिंग है।

हालाँकि, Oracle मोड में चलने पर, परिणाम null . होता है ।

यहाँ यह डिफ़ॉल्ट मोड में है (अर्थात नहीं Oracle मोड में):

SELECT TRIM('');

परिणाम:

+----------+
| TRIM('') |
+----------+
|          |
+----------+

आइए अब Oracle मोड में स्विच करें:

SET SQL_MODE=ORACLE;

और कोड को फिर से चलाएँ:

SELECT TRIM('');

परिणाम:

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

ऐसा करने का एक वैकल्पिक तरीका भी है। Oracle मोड में स्विच करने के बजाय, आप TRIM_ORACLE() . का उपयोग कर सकते हैं फ़ंक्शन नाम के रूप में।

आइए डिफ़ॉल्ट मोड पर वापस जाएं:

SET SQL_MODE=DEFAULT;

और अब TRIM_ORACLE() चलाएं :

SELECT TRIM_ORACLE('');

परिणाम:

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

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

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

SELECT TRIM();

परिणाम:

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
पर ')' के पास उपयोग करने के लिए सही सिंटैक्स के लिए अपने मारियाडीबी सर्वर संस्करण से संबंधित मैनुअल की जांच करें।

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मारियाडीबी में एक तालिका के चरित्र सेट और संयोजन को सेट करें

  2. ProxySQL और ClusterControl के साथ MySQL और MariaDB क्वेरी कैशिंग

  3. Amazon RDS (MySQL या MariaDB) को ऑन-प्रेम सर्वर पर माइग्रेट करना

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

  5. उबंटू पर मारियाडीबी कैसे स्थापित करें और सुरक्षित करें