使用sqlite3的,我有一個簡單的表是這樣的:如何刪除列中的非字母數字字符?
ArtistID Name
---------------------------------
0 andres segovia
1 andres|segovia|
2 ?andres-segovia
3 andres segovia and john
4 anya marina
5 aphex twin
6 aphex-twin
會是什麼一個選擇的樣子才能看到這樣的結果:
ArtistID Name
---------------------------------
0 andressegovia
1 andressegovia
2 andressegovia
3 andressegoviaandjohn
4 anyamarina
5 aphextwin
6 aphextwin
我一直在使用正則表達式嘗試通過在我的〜/ .sqliterc文件中加入「.load /usr/lib/sqlite3/pcre.so」這一行,但在查詢中使用REGEXP會返回以「Error:no string」結尾的奇怪結果,因此可能有更清晰的方法?
爲別人跑了進去,當你比較對數據的「無弦」的錯誤發生。您可以在執行'REGEXP'操作之前通過執行'IS NOT NULL'比較來使用此模塊解決此問題。一個適當的解決方案可能是補丁pcre.so將空數據視爲空字符串。 – 2012-07-10 15:28:03