Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 10896|Antwoord: 0

[Bron] Enige kennis van SQL Server 2008 full-text search

[Link kopiëren]
Geplaatst op 04-10-2015 21:03:04 | | |
1. Ik heb een paar goede berichten gelezen,

SQL Server 2008 Overzicht van Full-Text Search http://www.cnblogs.com/galaxyyao/archive/2009/02/13/1390139.html

Volledige tekst index http://www.cnblogs.com/liulun/articles/1368655.html


Kopieer eerst een alinea:

V: Waarom volledige tekst zoeken?
A: Omdat de querysnelheid van tekst traag is (het wordt niet aanbevolen om een index op de tekst te bouwen, wat de reden is)
V: Is er enig verschil ten opzichte van 2005?
A; Natuurlijk is er een verschil, en de naam wordt voorafgegaan door een geïntegreerd. Voorheen had 05 een apart indexbestand en engine, maar in 08 werd het geïntegreerd in de bestandsgroep.
V: Wat is het principe?
A: Op basis van trefwoorden
V: Hoe verhoudt het zich tot gewone indexen?
A: Het doel is om de zoeksnelheid te verbeteren. Volledige tekstindexen hebben veel van dezelfde kenmerken als indexen
    Full-text search gebruikt semantische zoekopdracht (deze techniek klinkt erg diepgaand en kan ook worden gebruikt voor binaire documenten.
V: Waar is het voor?
A: Om het eenvoudigste voorbeeld te geven, zoek naar artikelen, fuzzy matching, snelle en grote hoeveelheden kunnen ook rangschikken.



Twee. Ga daarna naar MSDN om wat Dongdong te zien:

Overzicht van de volledige tekst
http://msdn.microsoft.com/zh-cn/library/cc879306.aspx



Sommige van de volgende citaten zijn als volgt gekopieerd:

1. In SQL Server 2008 is de full-text engine volledig geïntegreerd in de database-engine. De full-text engine zit nu in een SQL Server-proces (sqlservr.exe) in plaats van een apart proces (msftesql.exe). Door de full-text engine te integreren in de database-engine wordt de full-text beheerbaarheid verbeterd, worden hybride queries geoptimaliseerd en de algehele prestaties verbeterd. Van: http://msdn.microsoft.com/zh-cn/library/ms142587.aspx

2. De creatiestappen van full-text zoekopdracht, te lui om screenshots te maken, te zien dat anderen het gedaan hebben, citeren het direct, maar vanaf de tweede pagina is het anders dan mijn local, ik kan niet direct met de rechtermuisknop op de tabel klikken om een full-text zoekopdracht te maken, de standaard is grijs, ik kan alleen een index maken in de full-text indexdirectorycatalogus in opslag.  http://www.sql-server-performance.com/2010/full-text-search-2008/

3. In eerste instantie dacht ik dat de full-text search directory een directory op de bijbehorende harde schijf moest zijn, wat vergelijkbaar is met het concept locune. Maar in feite is de full-text directory vanaf SQL Server 2008 een virtueel object en behoort niet tot een enkele bestandsgroep. Een volledige inhoudsopgave is een logisch concept dat een set volledige tekstindexen vertegenwoordigt. Bron:
http://msdn.microsoft.com/zh-cn/library/ms142497.aspx

4. Je kunt alleen een full-text index maken voor een tabel- of indexweergave, maar geen full-text index voor een normale view.

Een full-text index is een speciaal type marker-gebaseerde functionele index die wordt gegenereerd en onderhouden door de full-text engine. Om een volledige tekstzoekopdracht op een tabel of weergave te maken, moet de tabel of weergave een unieke, niet-nulleerbare, enkelkolomindex hebben. De full-text engine moet deze unieke index gebruiken om elke rij in de tabel toe te wijzen aan een unieke compressible key. Volledige tekstindexen kunnen de kolommen Char, Varchar, Nchar, Nvarchar, Text, Ntext, Image, XML, Varbinary en Varbinary(max) omvatten.

5. Om een volledige tekstindex op Tabel A te maken, is er een premisse, namelijk dat er ten minste één unieke index op Tabel A moet zijn, dat wil zeggen, als er geen index op Tabel A is, wil je geen volledige tekstindex op Tabel A maken.

In 6.SQL Server 2008 wordt de volledige tekstindex alleen beperkt door de beschikbare geheugenbronnen van de computer die de SQL Server-instantie draait. http://msdn.microsoft.com/zh-cn/library/cc879306.aspx

7. Raadpleeg meerdere kolommen (full-text zoekopdracht)
Door een lijst met kolommen te specificeren om te doorzoeken, kun je meerdere kolommen opvragen met het CONTAINS predicaat. Deze kolommen moeten uit dezelfde tabel komen.

Gebruik haakjes, SELECTEER Naam, Kleur UIT Productie. Product WAAR BEVAT((Naam, Kleur), 'Rood');

Of gebruik het *-teken, SELECTEER Naam, Kleur VAN Productie.Product WAAR BEVAT(*, 'Rood');

Bron: http://msdn.microsoft.com/zh-cn/library/ms142488.aspx

9. Zoek meerdere kolommen op voor meerdere tabellen

Het kan alleen CONTAIN of CONTAINS, zoals WHERE CONTAINS(t1. Naam, 'Rood') of BEVAT(t2. naam, 'Red');

10. De prestaties van full-text queries geoptimaliseerd

Gebruik ALTER FULLTEXT CATALOG REORGANIZE om de full-text catalogus te reorganiseren.

ALTER FULLTEXT CATALOGUS klantrebuild MET ACCENT_SENSITIVITY=OFF

Voor meer informatie, kijk hier naar: http://msdn.microsoft.com/zh-cn/library/cc879244.aspx

11. Voer een zoekopdracht naar voorvoegsels uit http://msdn.microsoft.com/zh-cn/library/ms142492.aspx

Je kunt full-text search gebruiken om te zoeken naar woorden of uitdrukkingen met een gespecificeerd voorvoegsel.

Wanneer je een zoekopdracht voor het prefix uitvoert, worden alle items in de kolom die tekst bevatten die begint met het opgegeven prefix teruggegeven. Bijvoorbeeld, om te zoeken naar alle rijen die het voorvoegsel top bevatten (zoals topple, toping en top zelf), zou de zoekopdracht er als volgt uitzien:

SELECTEER * UIT Product WAAR BEVAT (ProductNaam, '"auto*"' );
Alle tekst die overeenkomt met de tekst die vóór het asterisk (*) is gespecificeerd, wordt teruggegeven.

Opmerking: Als je geen dubbele aanhalingstekens toevoegt voor en na de tekst en het sterretje (bijv. CONTAINS (DEscrip{filter}tION, 'top*')), zal de volledige tekstzoekopdracht het sterretje niet als wildcard gebruiken.

Wanneer een voorvoegsel een frase is, wordt elk token waaruit de frase bestaat als een apart voorvoegsel behandeld. Alle regels met woorden die met deze voorvoegsels beginnen, worden teruggegeven. Bijvoorbeeld, het voorvoegsel "light bread*" zoekt naar regels met de tekst "light breaded", "lightly breaded" of "light bread", maar geeft niet "Lightly toasted bread" terug.





Vorig:Een Kantonees nummer van Jacky Cheung, het voelt best goed
Volgend:Een meisje in Lianyungang, provincie Jiangsu, werd op het toilet van haar shirt ontdaan en francily geslagen
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com