sql >> Database teknologi >  >> RDS >> Sqlserver

Blandede forespørgsler mod fuldtekstindeks

Jeg tror ikke, du skulle opleve noget problem, hvis jeg forstår dit spørgsmål korrekt. Jeg kombinerer ofte fuldtekst og b-træ med flotte resultater. Når fuldtekstsøgningen udføres, ser den på hvert afgrænset "udtryk" som et indeks, ligesom det ville se en indekseret kolonne med kun et udtryk (giv eller tag nogle sql-statistikker). Uanset hvad skal SQL finde ud af dens eksekveringssti. Fuld tekstsøgning favoriserer ikke sammenligning af heltal-/datoværdier - mere for at matche strenge af afgrænsede data.

Jeg kunne forestille mig, at du ville blive ved med at bruge effektiviteten af ​​b-tree konceptet til din fordel. Fuldtekstkatalogsøgningen forekommer mig at være en meget mere rundsøgning, selvom den er meget mere fordelagtig i situationer, hvor man bruger "LIKE" til at parse/sammenligne strenge.

Det jeg gør er:

 SELECT * FROM MyTable
  WHERE CONTAINS(columnName, '"Toy Dog" OR "live animal"')
    AND start_date > ###;

(se denne msdn-artikel for syntaksoplysninger )

P.S. Når du indekserer heltaldata i fuld tekst, skal du deaktivere stoplisten, så disse værdier ikke ignoreres i katalogindekseringen.

Håber noget af det hjælper! (Ingen har svaret, så jeg tænkte, at jeg ville give min erfaring)




  1. Genopbyg indeks på InnoDB

  2. PHP Kan ikke oprette forbindelse til PDO ODBC-driver

  3. Android JDBC virker ikke:ClassNotFoundException på driveren

  4. Hvilke effekter har det at bruge en binær kollation?