2016-07-28 8 views
0

これはSQL Server 2014に関する質問です。私はテーブルxxxを持っています。タイプvarcharcol1という列があります。この列の値は、1A324Gのような英数字を使用できます。 !2A93Cまたは#AC934Dなどの特殊文字もあります。SQL Serverの特殊文字のフィルタリング

この列の値には、任意の特殊文字(例:!$#^().-_)を使用できます。私は、英数字の値だけを使ってデータを抽出し、その中に特殊文字は入れませんでした。私はワイルドカード検索パターンでLIKE句を使用しようとしていましたが、英数字のみのものを除外することはできません。

誰かが私に手伝ってどうすればいいのか教えてください。

+0

あなたが質問で試したコードの例を投稿してください。それはあなたの心をきれいにするのに役立ち、どこに行かないか指示します。 –

+0

こんにちは、私はcol1列に2つの値を持っていると仮定します:1GHD5343HS3435368と!GE9343DGE5934435。私は結果に1GHD5343HS3435368だけを抽出したいです。私はxxxからselect *のようなものを試しましたが、 '%[0-9] [A-Z] [^!]%'のようなcol1は使えません。私はどのようにLIKE句でワイルドカードパターンの検索を使うことができるのか分かりません。また!の代わりに! col1の値に$が存在する可能性があります。特別な文字と英数字の組み合わせがあります。 select文の英数字の値だけをフィルタリングする方法を教えてください。または、私はこれのためにストアドプロシージャを書く必要があります。 – user3807741

答えて

-1

私はSQLでプレイして以来、しばらくしていますが、このようなものはうまくいくはずです。

はCOL1が '!%%' OR '%の$の%' を、NOT LIKE XXX * FROM を選択します。

+0

アルファ値以外のフィールドはすべて除外されません。 – zyamys

+0

iは以下のようなものを試してみました、動作するようです: '!%%' がcol1のような または または またはCOL1 '%番号%の' のようなcol1のは '%@%の' のようなcol1のXXX から明確なCOL1を選択します'%$%' または '%%'のようなcol1 '%*%' のようなcol1、 '%*%' のようなcol1、 '%'% ' のようなcol1、'% ''% ''% 'のようなcol1、 % ' または'%。% 'のようなcol1 または'% - % 'のようなcol1 または'%+% 'のようなcol1 – user3807741