プログラミング初心者です。
テキストボックスに、グーグルとかみたいに、
○文字○ スペース ●文字●と入れて、検索ボタンをおすと、
○文字○と●文字●の両方の文字を含んだデータを表示したいと思っています。
ストアドプロシージャを使って、1つの文字列なら検索することは可能になったのですが、
スペースで区切った文字2つを使ってのAND検索をすることができなくて困っています。
以下は、1つの文字列のみ検索できるストアドプロシージャのです。
ALTER PROCEDURE [dbo].[対応依頼書文字列検索V99]
@str nvarchar(1000)
As
Create Table #tblIrai
(
IraiNo int
Primary Key(IraiNo)
)
Insert #tblIrai
Select 依頼書No
From yamagata.dbo.対応依頼書基本情報
Where [依頼書No] Like '%' + @str + '%'
Or [依頼日] Like '%' + @str + '%'
Or [依頼部署] Like '%' + @str + '%'
Or [依頼者] Like '%' + @str + '%'
Or [作業希望日] Like '%' + @str + '%'
Or [作業希望日補足] Like '%' + @str + '%'
Or [区分] Like '%' + @str + '%'
Or [依頼種別] Like '%' + @str + '%'
Or [法人コード] Like '%' + @str + '%'
Or [会社コード] Like '%' + @str + '%'
Or [法人名称] Like '%' + @str + '%'
Or [システム/機器名] Like '%' + @str + '%'
Or [バージョン(品番)] Like '%' + @str + '%'
Or [受付日] Like '%' + @str + '%'
Or [受付者] Like '%' + @str + '%'
Or [作業開始日] Like '%' + @str + '%'
Or [作業終了日] Like '%' + @str + '%'
Or [作業時間] Like '%' + @str + '%'
Or [作業担当者] Like '%' + @str + '%'
複数の条件で検索する方法が全く浮かびません。
スペースで区切った条件で検索する場合は、事前に処理が必要なのでしょうか。
ご存知の方がいらっしゃいましたら、お手数ですが、ご教授いただけると助かります。
お礼
maiko0318さんの回答を元に、自己解決できました。 ありがとうございました。
補足
ご回答ありがとうございます。 言語書いてなくてすいません。 言語はサーバーサイドは、ASPのVBSで、クライアント側は、HTMLです。 検索部分は、テキストエリアにしています。 以下検索部分のソースです。 <form action = "kensakukekka.asp" method="POST"> <table border="1" cellspacing=0 cellpadding=4 class="sample_03"> <tr class="example"> <td style="width:300px; text-align:left; background-color: #00ff00;"> <b>検索内容入力</b> </td> <td> <textarea name="kensa" style="width:100%" rows=1 class="textbox"></textarea> </td> <td> <input type="submit" value="検索"> </td> </tr> </table> </form> 検索ボタンを押すと、kensakukekka.aspに値を渡して、 ストアドプロシージャーにて、検索結果をかえします。 以下は、サーバーサイドのストアドプロシージャー部分のソースです。 '検索文字取得 skensa = Request.Form("kensa") ' データベース接続の確立 Set Conn = ConnectDB(DSN) SQL ="EXEC 対応依頼書文字列検索V99 '" & skensa & "'" Set Rs = ExecSql(Conn, SQL) どうでしょうか。このやり方で、どこか追加したら、検索は可能でしょうか。 お手数ですが、ご存知でしたら、教えていただけると幸いです。