2017-06-04 5 views
0

こんにちは、テキスト文字列の@記号を含む行を削除する方法があるかどうかを知りたいと思います。@記号を含む行を削除する

私はすでに試した:

DELETE FROM FilteredJobs WHERE Description LIKE '%[@]%' 

が、このタスクを追跡するために、他のMySQL関数が存在しますので、これが0行(私は4がある知っている)

私はこれは、MySQL内で行わ取得する必要がありますを返します。

+1

角括弧は何のためにありますか? – Barmar

+0

'DELETE FROM FilteredJobs WHERE説明LIKE '%@%'' – Damith

答えて

0

はこれを試してみてください:

DELETE FROM FilteredJobs WHERE Description LIKE '%@%' 

あなたがシンボルに含む正規表現の文字クラスを使用しようとしていた表示されます。これはLIKEでは機能しませんが、REGEXPで動作するはずです。ここで

DELETE FROM FilteredJobs WHERE Description REGEXP '[@]' 

あなたのアプローチはREGEXPを使用してうまくいくことを示すデモです:

Rextester

-1

まあ、これは完璧な答えではないかもしれませんが、確実にすることができ、私は考えることができ、何かであります試してみました:

UPDATE FilteredJobs SET Description = REPLACE(Description, '@', 'TO_BE_DELETED'); 

そして、あなたは、通常のDELETEクエリを発射することができます

DELETE FROM FilteredJobs WHERE Description LIKE '%TO_BE_DELETED%'; 
0

あなたは、それがメイン値のサブ文字列の位置を返しますlocateを使用することができます ...

DELETE FROM FilteredJobs WHERE locate('@', Description) > 0; 
関連する問題