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

स्ट्रिंग स्थिति खोजें और किसी अन्य तालिका की पंक्ति में शामिल हों

एक स्ट्रिंग को कॉलम में विभाजित करें:

select date,
       substring_index(cost, '-', 1) type_a,
       case when cost regexp '.*-' then
                 substring_index(substring_index(cost, '-', 2), '-', -1)
            else ''
       end type_b,
       case when cost regexp '.*-.*-' then
            substring_index(substring_index(cost, '-', 3), '-', -1)
            else ''
       end type_c,
       case when cost regexp '.*-.*-.*-' then
            substring_index(substring_index(cost, '-', 4), '-', -1)
            else ''
       end type_d,
       case when cost regexp '.*-.*-.*-.*-' then
            substring_index(substring_index(cost, '-', 5), '-', -1)
            else ''
       end type_e
from rate_cost;

यदि आप तालिका डिज़ाइन को संशोधित कर सकते हैं, तो एकाधिक कॉलम बनाना बेहतर होगा:

create table rate_cost (
    id int,
    rate int,
    hotel int,
    cost_type_a int,
    cost_type_b int,
    cost_type_c int,
    cost_type_d int,
    cost_type_e int,
    date date);



  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. अपाचे को xampp के साथ स्थापित करने में त्रुटि

  5. java.sql.SQLException:कोई डेटाबेस नहीं चुना गया