1
テーブルから人名を返すクエリを作成しようとしています。TSQL - 1、2または3の部分を持つ名前の検索
テーブルには、full_nameというフィールドがあります。
私はそのフィールドのテーブルにフルテキストインデックスを作成しました。
私は唯一の特定の状況では、次のクエリ
ALTER procedure [dbo].[spGetContactFromContactName]
@contactname VARCHAR(200)
AS
DECLARE @searchstr VARCHAR(200)
set @searchstr = '"'+REPLACE(@contactname,',','*" OR ''')+'*"'
select * from tbl_ContactDetails
where contains(Full_Name,@searchstr)
この作品を持っています。
フィールドでは、次のいずれかを入力すると、クエリが機能ジョン・ジェームズ・ジョーンズの名前が含まれている場合:
- ジョン
- ジェームズ
- ジョーンズ
- ジョン・ジェームズ
- ジェームズジョーンズ
- ジョンジェームズジョーンズ
John Jonesと入力すると機能しません。
私は上記のクエリがどこから来たのかをオンラインで検索しました。任意のアイデアやポインターは非常に高く評価されます。事前に
おかげ
デビッド
お返事ありがとうございますstonetiger。実際にはうまくいきます。ユーザーが実際に入力した行数を制限する方法はありますか?もう一度おねがいします – Clanger67
私の自身の質問に答えている、ANDとORを交換する必要があります。 – Clanger67