検索したいデータに空白がある時空白のない検索文字列でlike検索して
データがヒットするようにしたいです
col1
NTTデ ー タ
NTTデ - タ シ ス テ ム ズ
NTTデ ー タ ク オ リ テ ィ
日立製作所
IBM
このようなカラムのデータが入っているとします
※空白を含むデータや空白を含まないデータがあるとします
これを select * from table1 where col1 like '%NTTデータシス%'
とするとNTTデ ー タ シ ス テ ム ズが検索されるようにしたいと思っています。
replace関数を使って実現しようと思ったのですが
SELECT REPLACE(col1,' ','') as col1 From table1 where col1 like '%システムズ%'
これだとデータがヒットせず単純に表示するときに空白が削除されるだけです
どうすれば空白を含むデータを検索することができるでしょうか
できれば全角・半角両方を含む文字のデータでも検索できるようにしたいです
SQLServer 2005を利用しています。
No.1ベストアンサー
- 回答日時:
>SELECT REPLACE(col1,' ','') as col1 From table1 where col1 like '%システムズ%'
SELECT句とWHERE句は別物です。以下のようにWHERE句でREPLACEを指定してください。
※SQLの解釈上、WHERE句が先に解釈されて対象データを特定しSELECT句の指示に従いデータを抽出します。
SELECT REPLACE(col1,' ','') as col1 From table1 where REPLACE(col1,' ','') like '%システムズ%'
create table table1
(
col1 varchar(100)
);
insert into table1 values('NTTデ ー タ');
insert into table1 values('NTTデ - タ シ ス テ ム ズ');
insert into table1 values('NTTデ ー タ ク オ リ テ ィ');
insert into table1 values('日立製作所');
insert into table1 values('IBM');
SELECT REPLACE(col1,' ','') as col1 From table1 where col1 like '%システムズ%';
col1
------------------
(0 行処理されました)
SELECT REPLACE(col1,' ','') as col1 From table1 where REPLACE(col1,' ','') like '%システムズ%';
col1
------------------
NTTデ-タシステムズ
(1 行処理されました)
>できれば全角・半角両方を含む文字のデータでも検索できるようにしたいです
SQL Serverの設定は「全角半角を区別する」になってますか?
区別しない設定なら、そのままでOKです。
区別する設定になっているならREPLACEを二度がけすればよいと思います。
where REPLACE(REPLACE(col1,' ',''),' ','') like '%システムズ%'
No.2
- 回答日時:
これでいかがでしょうか。
select * from table1 where replace(replace(col1,' ',''),' ','') like '%NTTデータシス%'
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- その他(プログラミング・Web制作) pythonリストの特定の値を表示htmlで表示できない 2 2022/05/14 05:48
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
- Excel(エクセル) Excel 値を返す数式についてです 3 2022/11/21 20:08
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Excel(エクセル) [オートフィルター]機能について 3 2023/02/04 14:32
- その他(開発・運用・管理) MacのPCでわファイルを検索したくて、右上の虫眼鏡で検索をかけますが、EPSデータが何故か検索デー 2 2022/10/25 10:29
- Excel(エクセル) スプレットシートでA1~G1にデータが入っていて、 それを1列ずつ空けて表示する関数がわかる方いまし 4 2022/08/25 09:39
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
スペースを検索したい
SQL Server
-
where句中のtrim関数について
Oracle
-
スペースによる絞り込み検索をSQL文だけで実現したい
MySQL
-
-
4
空白文字とスペースの検索
SQL Server
-
5
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
6
SQL文で右から1文字だけ削除するやり方
MySQL
-
7
半角スペースを全角スペースに
PHP
-
8
データを削除しても表領域の使用率が減りません
Oracle
-
9
2つのテーブルから条件に一致しないデータ抽出
SQL Server
-
10
SQLServerで文字列の末尾からある位置で取出
SQL Server
-
11
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
12
MS SQLServer のSQLで文字列の前にN:
その他(データベース)
-
13
SELECTした結果をSELECTしたい!
その他(データベース)
-
14
二つの表の項目を比較して値を取得するSQL
その他(データベース)
-
15
2つの列が同じ値の行を取得するSQL
Oracle
-
16
文字列からアルファベットだけを抜き出すには
SQL Server
-
17
SQL 全角半角混在の文字列から半角数字のみを抜き出す
Oracle
-
18
WHERE句の実行順序
Oracle
-
19
Accessのクエリで、あいまい検索の方法
Access(アクセス)
-
20
オラクルではできるのにSQLSERVERではサブクエリーで複数キーを指定できない?
SQL Server
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLサーバー接続 特定のPCがWin...
-
SQLサーバで和暦から西暦に変換...
-
<SQL>重複しているデータの場合...
-
ACCESS2007 フォーム 「バリア...
-
chr(13) と char(13) の違いっ...
-
これをSQL文で出来るでしょうか?
-
sqlserverで集計結果をUPDATEし...
-
sqlで、600行あるテーブルを100...
-
SQL Date型の列から年月だけを...
-
SQL文 複数実行
-
Accessの重複なしのカウントの...
-
SQLのエラー(~付近に不適切な...
-
BULK INSERT時のNull許容について
-
SQLて何ですか!
-
[SQLServer] テーブル名からカ...
-
【SQLサーバ】float型における...
-
SQL Server 縦方向のデータを列...
-
サーバー破壊
-
Visuaal Studio Community 2022...
-
AccessのInsertクエリのあとつ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VIEWに対してWHERE句をつける
-
空白文字を含む文字列データの検索
-
コマンドプロンプト 実行結果...
-
count()の結果を別の計算で使う...
-
JOIN使ってないのに、JOIN操作...
-
コマンドプロンプト 複数の実...
-
SQLのエイリアス
-
MySQL + PHP での自動採番
-
Null値が入れられない
-
NULLを含む列の足し算
-
SQLでLIMIT句を入れるとエラー...
-
MySQLの特定のカラムの内容を全...
-
nullと同じく空白をCountしない...
-
後でemailに追加でPRIMARY KEY...
-
sqlの中で、 例えば条件句で AN...
-
SQL任意に並び替えをしたい
-
テーブル作成時に、「`id` int(...
-
SELECT文の二段重ね
-
SQL文を入力したらエラー
-
phpとSQLで複数条件で検索する...
おすすめ情報