SSIS 2005/2008 realiza búsquedas y agrupaciones difusas. ¿Hay alguna característica que haga lo mismo en T-SQL?¿Es posible realizar búsquedas difusas de T-SQL sin SSIS?
Respuesta
La búsqueda difusa utiliza un enfoque de q-gram, dividiendo cadenas en pequeñas subcadenas e indexándolas. Luego puede buscar entradas dividiéndolas en cadenas de igual tamaño. Puede inspeccionar el formato de su índice y escribir una función CLR para usar el mismo estilo de índice, pero es posible que esté hablando de una buena porción de trabajo.
De hecho, es bastante interesante cómo lo hicieron, muy simple pero proporciona una coincidencia muy robusta y es muy configurable.
De eso recuerdo el índice la última vez que lo miré, cada q-gram o subcadena se almacena en una fila en una tabla (el índice). Esa fila contiene una columna nvarchar (entre otros valores) que se utiliza como datos binarios y contiene referencias a las filas que coinciden.
También hay una sugerencia de comentarios abierta en Microsoft Connect para esta función.
SQL Server tiene una función SOUNDEX():
SELECT *
FROM Customers
WHERE SOUNDEX(Lastname) = SOUNDEX('Stonehouse')
AND SOUNDEX(Firstname) = SOUNDEX('Scott')
búsqueda de texto completo es una gran herramienta difusa. Brief primer here
El 5 de marzo 2009 I tendrá un artículo publicado en www.sqlservercentral.com con una muestra de Jaro-Winkler TSQL
http://www.sqlservercentral.com/articles/65702/ – Brian
- 1. ¿Es mongoDB eficiente al realizar búsquedas de múltiples claves?
- 2. ¿Es posible realizar un "me gusta" en un comunicado Expresión de SSIS?
- 3. ¿Cómo realizar búsquedas binarias en NSArray?
- 4. ¿Es posible realizar una fusión in situ sin almacenamiento temporal?
- 5. Buscando una manera más rápida de realizar búsquedas de cadenas
- 6. ¿Hay alguna manera de hacer que cualquier cosa de emacs haga búsquedas "difusas"?
- 7. ¿Es posible realizar Incluye con matraz?
- 8. Django: realizar búsquedas en mayúsculas y minúsculas de manera predeterminada
- 9. TSQL - ¿Es posible definir el orden de clasificación?
- 10. TSQL pivote sin función agregada
- 11. ¿Cómo se hacen búsquedas difusas utilizando los parámetros vinculados en PDO?
- 12. Algoritmo para realizar búsquedas descentralizadas en las redes sociales
- 13. realizar preg_replace múltiple con diferentes búsquedas y reemplazar cada vez
- 14. ¿Es posible definir una función local en una consulta TSQL?
- 15. ¿Es posible realizar una carga de archivos asíncrona entre dominios?
- 16. ¿Es posible realizar una tarea de Rake interactiva?
- 17. ¿Cómo es posible que GMail Chat pueda realizar solicitudes AJAX sin interacción con el cliente?
- 18. Realizar llamadas sin actividad ACTION_CALL
- 19. Corrientes difusas coincidentes
- 20. ¿Es posible CSRF sin cookies?
- 21. Expresiones regulares difusas
- 22. Validación de correo electrónico TSQL (sin regex)
- 23. HQL: ¿Es posible realizar una UNIÓN INTERNA en una subconsulta?
- 24. ¿Es posible realizar la serialización con referencias circulares?
- 25. ¿Es posible realizar la adición en un Regex?
- 26. ¿Es posible realizar una interrupción personalizada en el ensamblaje?
- 27. ¿Es posible realizar actualizaciones por lotes en Sequel?
- 28. Fuente de datos de Excel de SSIS: ¿es posible anular los tipos de datos de columna?
- 29. búsquedas LDAP insensibles a mayúsculas
- 30. ¿MongoDB es compatible con soundex o coincidencias difusas?
verdad - se olvidó de esto. Pero no crea que va a funcionar para identificadores numéricos, digamos con dígitos transpuestos o algo así. – ScottStonehouse
He encontrado que soundex es muy primitivo en el pasado, funciona pero su granularidad es muy tosca. Double Metaphone es una versión más nueva de la coincidencia fonética, pero todavía es limitante. – vfilby