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

mySQL>> अल्पविराम-सीमांकित क्षेत्र को सामान्य बनाना

कृपया अपने कोड को वास्तविक पोस्टिंग में कॉपी करें, और वह कोड प्रदान करें जिसे आपने समस्या को हल करने के लिए उपयोग करने का प्रयास किया है।

सबस्ट्रिंग_इंडेक्स फ़ंक्शन कुछ सीमांकक (यहां एक अल्पविराम) के साथ एक स्ट्रिंग का एक हिस्सा देता है, और जब एक नकारात्मक इंडेक्स पास हो जाता है तो यह विपरीत दिशा से मैचों की खोज करना शुरू कर देता है, इसलिए -1 अन्यथा बहु-वस्तु सूची (इंडेक्स>=2 के लिए) में से एक आइटम को पकड़ लेता है।

हमारी चर्चा के अनुसार, मैंने यह बताया है कि मैंने यह कैसे किया और ऑटो-इन्क्रीमेंट का उपयोग करने का एक उदाहरण दिखाया। (यह बेला के 'बिल्ड स्कीमा' भाग में चलाया जाता है।)

create table TAGS
(`T_ID` int auto_increment primary key, `T_Name` varchar(18))
;

insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(RES_Tags, ',', 1) as X
    FROM RESOURCES
;

insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(
      SUBSTRING_INDEX(RES_Tags, ',', 2)
      ,',',-1)
  FROM RESOURCES
;

insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(
      SUBSTRING_INDEX(RES_Tags, ',', 3)
      ,',',-1)  as X
  FROM RESOURCES
;
insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(
      SUBSTRING_INDEX(RES_Tags, ',', 4)
      ,',',-1)  as X
  FROM RESOURCES
  ;

insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(
      SUBSTRING_INDEX(RES_Tags, ',', 5)
      ,',',-1)  as X
  FROM RESOURCES
;

insert ignore into TAGS (T_Name)
  SELECT 
    SUBSTRING_INDEX(
      SUBSTRING_INDEX(RES_Tags, ',', 6)
      ,',',-1)  as X
  FROM RESOURCES
;

create table New_TAGS like TAGS;
insert into New_TAGS (T_Name)
  select distinct trim(T_Name)
  from TAGS;

drop table TAGS;
rename table NEW_TAGS to TAGS;

सबस्ट्रिंग फ़ंक्शन का दस्तावेज़ीकरण इस प्रश्न का संभावित दोहराव



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CreateView में self.object डेटाबेस में सहेजने के बाद एक आईडी क्यों नहीं है?

  2. माइस्क्ल के लिए वैग्रांट पोर्ट अग्रेषण

  3. एक INT . के साथ डीबी तालिका अपडेट करें

  4. एक बार में एक MySQL में एकाधिक मान सम्मिलित करना

  5. SQLSTATE [HY000] [2005] अज्ञात MySQL सर्वर होस्ट 'mysql1.alwaysdata.com:3306' (2)