/*Crear un entorno de prueba
WINXP(SP3)+SQLSERVIDOR2005(SP3)*/
si object_id('tb') no es nulo
mesa abatible tb
ir
crear tabla tb
(id int identidad (1,1),
título varchar(200),
detalle varchar(1000),
restricción pk_id clave primaria (id): requerida al crear un índice de texto completo
)
insertar en la tuberculosis
seleccione 'Los Rockets están a punto de contratar a un tirador novato'. Se informa que las negociaciones contractuales entre Budinger y los Rockets se completaron ayer, y Budinger obtendrá el mismo contrato que Taylor. Anteriormente, los medios revelaron que el contrato de Taylor tiene una duración de cuatro años y un valor total de 10.000 dólares estadounidenses, de los cuales los dos primeros años son contratos garantizados. Se espera que Budinger anuncie formalmente su fichaje para unirse a los Rockets en los próximos días. '
unión todos
select 'Se reveló que Weaver había firmado un contrato con los gigantes griegos', 'Según International Basketball Network, el ex jugador de los Rockets Van Weaver ha firmado un contrato con los gigantes griegos Olympiacos. Weaver recibió un contrato de dos años por valor de 10.000 dólares. '
unión todos
Seleccione 'Los Spurs gastaron mucho dinero para luchar contra los Lakers', 'Los Spurs han agregado varios generales durante esta temporada baja de verano. El entrenador en jefe Greg Veach reveló recientemente en una entrevista con Yahoo Sports que los Spurs no dudaron en pagar el dinero. Impuesto de lujo para construir un edificio lujoso. La alineación está diseñada para luchar contra los Lakers y luchar por un quinto campeonato. '
unión todos
seleccione 'Wallace nunca ha pensado en dejar Motor City', 'Ben Wallace acordó regresar a los Detroit Pistons y firmó un contrato de $ 10,000 por año con los Pistons con el salario mínimo de un veterano. Según el columnista del Daily Herald Mick. McGraw reveló que el jugador defensivo interior que dominaba la NBA en ese momento ni siquiera consideró dejar a los Pistons. '
unión todos
seleccione 'Miller es tan bueno luchando por el amor y persiguiendo a su esposa', 'Para aquellos "posteriores" que nunca han visto a Reggie Miller crear "Miller Time" con los Pacers, ¿cómo deberíamos presentar a esta ex estrella de la NBA? ¿Podría comenzar con la pancarta tirada por un avión sobre Malibu Beach en Los Ángeles anteayer? Me temo que ningún padre está dispuesto a hacer esto. '
unión todos
seleccione 'Yao Ming: no traté a Shanghai como un proyecto de inversión, pero estaba feliz de hacer negocios como una buena persona'", dijo "Yao Mi": Yao Ming, a quien no le faltan efectos publicitarios, adquirió el El Shanghai Oriental Basketball Club, que está al borde de la extinción, demuestra que realmente quiere ganarse la vida para el ex. El equipo matriz hace algo. '
unión todos
seleccione 'Los Rockets perdieron ante los Wizards para terminar con el récord del año', 'La combinación Yao-Mai estuvo en mala forma en esta campaña. Yao Ming anotó un rebote y un bloqueo en un tiro, y McGrady anotó un rebote y una asistencia. Un tiro. Los dos se unieron para conseguir un rebote. Jamieson tuvo dos asistencias y dos tapones. '
Paso 1: habilitar la indexación de texto completo de la base de datos
sp_fulltext_database enable: habilita la indexación de texto completo de la base de datos
ir
Paso 2: crear un catálogo de texto completo
crear catálogo de texto completo tb_fulltext
en la ruta N'D:Program FilesMicrosoft SQL Server2005MSSQL.1MSSQLFTData'
con acento_sensibilidad = activado - distinguir acentos
autorización dbo;--el propietario del catálogo de texto completo
Paso 3: crear un índice de texto completo
crear índice de texto completo en tb
(título, detalle)
índice clave pk_id: especifique la columna de índice Para mejorar el rendimiento, es mejor utilizar un índice agrupado.
en tb_fulltext
con change_tracking auto: actualiza automáticamente el índice de texto completo cuando se modifican datos en la tabla asociada.
Paso 4: Ejemplo de consulta:
seleccione * de tb
donde contiene ((título, detalle), 'Yao Ming')
Sintaxis de consulta:
1. Busque palabras específicas: contiene (detalle, 'Yao Ming')
2. Busque una frase específica: utilice "" para encerrar la frase entre comillas dobles, contiene (detalle, 'Yao Ming Shanghai')
3. Busque palabras y frases en varias columnas: contiene ((título, detalle), 'Yao Ming Shanghai')
4. Busque palabras o frases que comiencen con el texto especificado: contiene (detalle, '"Yao Ming*"')
Si el texto y el asterisco no están entre comillas dobles, la búsqueda de texto completo tratará el asterisco como un carácter. Si la búsqueda es de una frase, cada palabra dentro de la frase se considera un prefijo. contiene(detalle,'"Yao Ming Shanghai*"') devolverá los resultados donde la primera palabra comienza con Yao Ming y la segunda palabra comienza con Shanghai
5. Busque variaciones de palabras específicas: contiene (detalle, 'formas de (inflexión, paseo)')
Devolverá filas que contengan paseo, paseos, montar, montado en la tabla
6. Busque palabras o frases cercanas a otra palabra o frase: contiene (detalle, 'Yao Ming cerca de Shanghai')
7. Palabras o frases que utilizan valores ponderados: contiene (descripción, 'es sobre (peso de rendimiento (.8), peso cómodo (.4), peso suave (.2))')
Peso asigna un valor de ponderación entre 0,0 y 1,0 a cada palabra o frase.
8. Utilice múltiples condiciones de búsqueda: contiene (detalle, '"Yao Ming" o "Shanghai"')
contiene(detalle,'"Yao Ming" y "Shanghai"')
contiene(detalle,'"Yao Ming" y no "Shanghai"')
9. También puedes usar variables en contiene.
10. La búsqueda de sinónimos contiene (título, 'formas de (tesauro, en)')
【prueba】
En el ejemplo anterior, ejecute
seleccione * de tb
donde contiene (título, 'Shanghai')
resultado:
detalle del título de identificación
6 Yao Ming: No consideraba a Shanghai como un proyecto de inversión. Estaba feliz de ser un buen hombre de negocios y se convirtió en una buena persona. "Yao Mi" dijo: Yao Ming, a quien no le falta efecto publicitario, adquirió el Shanghai Oriental. Club de Baloncesto, que estuvo al borde de la extinción, lo que demuestra que tiene muchas ganas de hacer algo por su antiguo equipo matriz.
Pero ejecuta:
seleccione * de tb
donde contiene (título, '上')
El resultado es un conjunto vacío.
Motivo: Al realizar una consulta de índice de texto completo, "上" es una palabra de interferencia en chino simplificado, es decir, se ignorará durante la consulta. Además, al establecer un índice de texto completo, generalmente se usa una frase como; un elemento de índice en lugar de una sola palabra.
Si desea realizar esta consulta nuevamente y desea conocer los resultados de la primera consulta, puede modificar el tesauro del índice de texto completo.
La ruta donde existen los archivos de palabras irrelevantes y sinónimos:
D:Program FilesMicrosoft SQL Server2005MSSQL.1MSSQLFTData Cada nombre de archivo debe ser fácilmente identificable.
Aquí hay una breve introducción sobre cómo modificar el diccionario de sinónimos:
1. Utilice el Bloc de notas para abrir tschs.xml, que es una biblioteca de sinónimos para chino simplificado.
<XML ID="Tesauro de búsqueda de Microsoft">
<!-- Comentado
<tesauro xmlns="x-schema:tsSchema.xml">
<diacritics_SENSITIVE>0</DIACRICS_SENSITIVE>
<expansión>
<sub>Internet Explorer</sub>
<sub>ES</sub>
<sub>IE5</sub>
</expansión>
<reemplazo>
<pat>NT5</pat>
<pat>W2K</pat>
<sub>Windows 2000</sub>
</reemplazo>
<expansión>
<sub>ejecutar</sub>
<sub>trotar</sub>
</expansión>
</tesauro>
-->
</XML>
explicar:
<reemplazo>
<pat>NT5</pat>
<pat>W2K</pat>
<sub>Windows 2000</sub>
</reemplazo>
es una palabra sustituta, es decir, al consultar W2K, Windows 2000 la reemplazará automáticamente para la consulta.
<expansión>
<sub>ejecutar</sub>
<sub>trotar</sub>
</expansión>
Es una biblioteca de sinónimos, es decir, al consultar ejecutar, también se buscará jog.
En este ejemplo agregue:
<expansión>
<sub>Arriba</sub>
<sub>Shanghái</sub>
</expansión>
2. Elimine la línea de comentario que comienza al final:
<!-- Comentado
-->
3. El resultado final es:
<XML ID="Tesauro de búsqueda de Microsoft">
<tesauro xmlns="x-schema:tsSchema.xml">
<diacritics_SENSITIVE>0</DIACRICS_SENSITIVE>
<expansión>
<sub>Internet Explorer</sub>
<sub>ES</sub>
<sub>IE5</sub>
</expansión>
<reemplazo>
<pat>NT5</pat>
<pat>W2K</pat>
<sub>Windows 2000</sub>
</reemplazo>
<expansión>
<sub>ejecutar</sub>
<sub>trotar</sub>
</expansión>
<expansión>
<sub>Arriba</sub>
<sub>Shanghái</sub>
</expansión>
</tesauro>
</XML>
3. Ejecute la declaración de consulta:
seleccione * de tb
donde contiene (título, 'formas de (tesauro, en)')
Puede ver que los resultados de la consulta son los mismos que contiene (título, 'Shanghai')