sql >> データベース >  >> RDS >> Sqlserver

LINQで全文検索(FTS)を使用することは可能ですか?

    はい。ただし、最初にSQLサーバー関数を作成し、それを呼び出す必要があります。デフォルトでは、LINQはlikeを使用します。

    詳細を説明するこのブログ投稿ですが、これは抜粋です:

    それを機能させるには、渡したキーワードに基づいてCONTAINSTABLEクエリ以上のものを処理しないテーブル値関数を作成する必要があります。

    create function udf_sessionSearch
          (@keywords nvarchar(4000))
    returns table
    as
      return (select [SessionId],[rank]
                from containstable(Session,(description,title),@keywords))
    

    次に、この関数をLINQ 2 SQLモデルに追加すると、次のようなクエリを記述できるようになります。

        var sessList = from s   in DB.Sessions
                       join fts in DB.udf_sessionSearch(SearchText) 
                       on s.sessionId equals fts.SessionId
                     select s;
    


    1. MicrosoftAccessデータベースの構築

    2. java.lang.IllegalArgumentException:列'_id'は存在しません

    3. SQL ServerのSYSDATETIME()とGETDATE():違いは何ですか?

    4. MySQL関数内でエラーを発生させる方法