テーブルから人物名を返すクエリを作成しようとしています。
テーブルには、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)
これは機能しますが、特定の状況でのみ機能します。
フィールドにJohnJamesJonesという名前が含まれている場合、次のいずれかを入力するとクエリが機能します。
- ジョン
- ジェームズ
- ジョーンズ
- ジョン・ジェームズ
- ジェームズ・ジョーンズ
- ジョン・ジェームズ・ジョーンズ
しかし、ジョン・ジョーンズを入力すると機能しません。
私はオンラインで解決策を探しました。それが上記の質問の出所です。任意のアイデアやポインタをいただければ幸いです。
前もって感謝します
デビッド