sql >> Databáze >  >> RDS >> Sqlserver

Je možné použít Full Text Search (FTS) s LINQ?

Ano. Nejprve však musíte vytvořit funkci SQL serveru a zavolat ji, protože LINQ ve výchozím nastavení použije podobné.

Tento blogový příspěvek, který vysvětlí podrobnosti, ale toto je výňatek:

Aby to fungovalo, musíte vytvořit funkci s hodnotou tabulky, která nebude dělat nic víc než CONTAINSTABLE dotaz na základě klíčových slov, která zadáte,

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

Tuto funkci pak přidáte do svého modelu LINQ 2 SQL a on nyní můžete psát dotazy jako.

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


  1. Jak Asinh() funguje v PostgreSQL

  2. ORA-01830:Obrázek formátu data končí před převodem celého vstupního řetězce / Vyberte součet v dotazu na datum

  3. Jak vytvořit VARRAY jako člena bloku PL/SQL v databázi Oracle

  4. Kde hodnota ve sloupci obsahujícím hodnoty oddělené čárkou