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

PostgreSQL में एक स्ट्रिंग को कैसे विभाजित करें

समस्या:

आप PostgreSQL में एक स्ट्रिंग को विभाजित करना चाहते हैं।

उदाहरण 1:

आपके पास एक वाक्य है, और आप इसे स्पेस कैरेक्टर से विभाजित करना चाहेंगे।

समाधान 1:

SELECT unnest(
  string_to_array('It''s an example sentence.', ' ')
) AS parts;

परिणाम इस तरह दिखता है:

भाग
यह
एक
उदाहरण
वाक्य।

चर्चा:

PostgreSQL में एक सरणी के तत्वों के रूप में वाक्य के सभी हिस्सों को प्राप्त करने के लिए, string_to_array(text, delimiter) फ़ंक्शन का उपयोग करें। टेक्स्ट वह टेक्स्ट है जिसे आप विभाजित करना चाहते हैं, और सीमांकक वह स्ट्रिंग (यहां, एक स्थान) है जिसके द्वारा आप टेक्स्ट को विभाजित करना चाहते हैं। string_to_array(text, delimiter) . का सरल उपयोग समारोह:

SELECT string_to_array('It''s an example sentence.', ' ') AS parts;

निम्नलिखित परिणाम लौटाएगा:

भाग
{यह एक उदाहरण, वाक्य है।}
SELECT unnest(
  string_to_array('It''s an example sentence.', ' ')
) AS parts;

यह सभी स्ट्रिंग भागों के साथ एक कॉलम तैयार करेगा, प्रत्येक एक अलग पंक्ति में।

उदाहरण 2:

sentences तालिका, कुछ वाक्य हैं।

वाक्य
यह पहला वाक्य है।
और ये रहा दूसरा।

आप वाक्यों को स्पेस कैरेक्टर से विभाजित करना चाहते हैं।

समाधान 2:

SELECT unnest(string_to_array(sentence, ' ')) AS parts
FROM sentences;

परिणाम इस तरह दिखता है:

भाग
यह
है
पहले
वाक्य।
और
यहां
अन्य
एक।

चर्चा:

पिछले उदाहरण की तरह, string_to_array(text, delimiter) और unnest(array) फंक्शन का उपयोग करें। पाठ स्तंभ नाम (वाक्य) होना चाहिए, लेकिन सीमांकक अभी भी स्थान (' ') है। इस बार, आप तालिका से डेटा का उपयोग करते हैं, इसलिए आपको तालिका नाम के साथ FROM कीवर्ड का उपयोग करने की आवश्यकता है।

SELECT unnest(string_to_array(sentence, ' ')) AS parts
FROM sentences;

उदाहरण 3:

sentences तालिका, दो कॉलम हैं:id और sentence

आईडी वाक्य
1 यह पहला वाक्य है।
2 और ये रहा दूसरा।

आप वाक्यों को स्पेस कैरेक्टर से विभाजित करना चाहते हैं।

समाधान 3:

SELECT
  id,
  unnest(string_to_array(sentence, ' ')) AS parts
FROM sentences;

परिणाम इस तरह दिखता है:

आईडी भाग
1 यह
1 है
1
1 पहले
1 वाक्य.
2 और
2 यहां
2
2 अन्य
2 एक।

चर्चा:

यह उदाहरण बहुत समान है, लेकिन आप id . भी देखना चाहते हैं कॉलम। इस कॉलम को देखने के लिए, बस इसे SELECT . में जोड़ें सूची और अल्पविराम शामिल करना याद रखें। आप परिणाम में वाक्य के भागों के साथ वाक्य की आईडी देखेंगे। उदाहरण के लिए, पहला वाक्य 5 भागों में विभाजित है, और इसकी आईडी है 1 . इसलिए, परिणाम में सभी 5 भागों की आईडी 1 . होगी . अगला वाक्य, आईडी के साथ 2 , को भी 5 भागों में विभाजित किया गया है, और इनमें से प्रत्येक भाग को id = 2 . के साथ दिखाया जाएगा ।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. जाँच कर रहा है कि क्या अजगर के तहत एक पोस्टग्रेस्क्ल टेबल मौजूद है (और शायद Psycopg2)

  2. क्या सर्वर होस्ट लोकलहोस्ट (::1) पर चल रहा है और पोर्ट 5432 पर टीसीपी/आईपी कनेक्शन स्वीकार कर रहा है?

  3. मैं Postgres में मॉड्यूल कैसे आयात करूं या एक्सटेंशन कैसे स्थापित करूं?

  4. PostgreSQL डेटाबेस का ऑडिट कैसे करें

  5. PgBouncer के साथ PostgreSQL कनेक्शन पूलिंग