2009-08-12 10 views
8

मेरे पास इस तरह की एक स्ट्रिंग है ए) मेरे एसक्लाइट डेटाबेस में टेक्स्ट .. मैं डेटाबेस से ए को हटाना चाहता हूं .. किसी को इसके लिए कोई प्रश्न पता है?sqlite3 डेटाबेस में स्ट्रिंग से वर्णों को कैसे निकालें?

उत्तर

11

@ laalto के जवाब करीब है, लेकिन यह बढ़त मामलों पर काम नहीं करेगा, विशेष रूप से अगर 'a) ' स्ट्रिंग में कहीं और होता है। आप पहले 3 वर्णों को हटाने के लिए SUBSTR का उपयोग करना चाहते हैं।

UPDATE tbl SET col=SUBSTR(col, 4) WHERE col LIKE 'a) %'; 

... noting that strings are indexed from 1 in SQLite:

sqlite> SELECT REPLACE ("a) I have some information (or data) in the file.", "a) ", ""); 
I have some information (or datin the file. 

sqlite> SELECT SUBSTR ("a) I have some information (or data) in the file.", 4); 
I have some information (or data) in the file. 

तो उसकी क्वेरी को अद्यतन करने के लिए, यह में बदल देना चाहिए।

8

आप REPLACE भी एक स्ट्रिंग के कुछ हिस्सों को हटाने के लिए उपयोग कर सकते हैं:

UPDATE tbl SET col=REPLACE(col, 'a) ', '') WHERE col LIKE 'a) %'; 
संबंधित मुद्दे