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

रिकॉर्ड की अल्पविराम से अलग स्ट्रिंग को कैसे विभाजित करें और क्रमिक रूप से MySQL में व्यवस्थित करें?

आप MySQL SUBSTRING_INDEX() का उपयोग कर सकते हैं। यह दिए गए अल्पविराम से अलग किए गए स्ट्रिंग से उप-स्ट्रिंग को सीमांकक की घटनाओं की एक निर्दिष्ट संख्या से पहले वापस कर देगा।

इसे आज़माएं, ऐसा लगता है कि यह ठीक काम कर रहा है:

SELECT ID
       ,SUBSTRING_INDEX(SUBSTRING_INDEX(t.AgentID, ',', n.n), ',', -1) Agent
       ,Name
       ,SUBSTRING_INDEX(SUBSTRING_INDEX(t.Return_Date, ',', n.n), ',', -1) Return_Date
FROM table1 t CROSS JOIN 
 (
   SELECT a.N + b.N * 10 + 1 n
   FROM 
     (SELECT 0 AS N UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) a
    ,(SELECT 0 AS N UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9) b
   ORDER BY n
  ) n

WHERE n.n <= 1 + (LENGTH(t.Return_Date) - LENGTH(REPLACE(t.Return_Date, ',', '')))
ORDER BY ID;

इसे जांचें..यहां SQL Fiddle

आगे के अध्ययन के लिए MySQL स्प्लिट स्ट्रिंग फंक्शन पर जाएं



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. आप मैक ओएस इंस्टाल पर MySQL को कैसे रोकते हैं?

  2. MySQL वर्णानुक्रम में क्रमबद्ध करें लेकिन इसे अनदेखा करें

  3. अत्यधिक MySQL गतिविधि

  4. php / Mysql सर्वश्रेष्ठ वृक्ष संरचना

  5. MySQL पंक्ति के बाद पहले का चयन करें