-2

良い一日、

検索時に問題が発生しました。たとえば、どこの大学のような特定の大学を見つけたいとします。大学またはどこにも検索しないと、良いどこにもない大学を含むいくつかの提案が得られます。正確な言葉遣いを検索すると、正確な結果が得られますが、大学をどこにも検索しない場合、つまり「の」なしで検索すると、何も得られません..

SQL ステートメントの例:

SELECT univ_name FROM university WHERE INSTR(univ_name,'--keyword here--')

私のSQLステートメントに欠けているものについて何か提案はありますか?

前もって感謝します :)

4

2 に答える 2

0

あなたが思っているよりも少しトリッキーになるでしょう。

@searchTerm varchar(max) から始めましょう

あなたがする必要があるのは、スペースで @searchTerm を分割し、次のように構築することにより、where 句を動的に構築することです。

where univ_name like '%term0%' AND univ_Name like '%term1%'

SQL 分割文字列での文字列の分割に関する一般的な戦略については、この質問を参照してください

これを varchar(max) に格納します。たとえば、@sql とします。

次に設定します@sql = ''select * from university ' + @sql

最後に実行しますEXEC (@sql)

于 2013-06-23T14:16:14.383 に答える