2

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  

次のような結果を表示するには、select はどのように見えるでしょうか。

ArtistID Name             
---------------------------------
0        andressegovia      
1        andressegovia       
2        andressegovia        
3        andressegoviaandjohn 
4        anyamarina          
5        aphextwin          
6        aphextwin   

「.load /usr/lib/sqlite3/pcre.so」という行を ~/.sqliterc ファイルに含めて正規表現機能を使用しようとしましたが、クエリで REGEXP を使用すると、「エラー: 文字列なし」で終わる奇妙な結果が返されます。おそらくもっと明確な方法がありますか?

4

1 に答える 1

3

あなたはこのようなことを試すことができます

SELECT DISTINCT 
  replace(replace(replace(replace(name, 
    ' ', ''),
    '|', ''),
    '?', ''),
    '-', '') FROM your_table
于 2012-04-11T09:49:05.707 に答える