es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Condensa la larga declaración CASE en una función para una coincidencia aproximada de cadenas.

Tengo una tabla con muchas entidades de empresas aparentemente duplicadas (tblOrganisations), por ejemplo:

ID Nombre
1 Empresa 1
2 Empresa Uno
3 EmpresaUno
4 Empresa Uno
5 Empresa Uno (Pty)Ltd
6 Empresa 1(Pty) Ltd
7 Empresa Uno Pty Ltd
8 Negocio 1
9 Negocio Uno
10 NegocioUno
11 Negocio Uno
12 Negocio Uno (Pty)Ltd
13 Negocio 1(Pty) Ltd
14 Negocio Uno Pty Ltd

Hay muchas más empresas con muchas variaciones diferentes en esta tabla (~100k filas).

He creado una coincidencia aproximada de cadenas utilizando una declaración de caso que limpia estas entidades como se muestra a continuación:

CASE WHEN tblOrganisations.Name LIKE ‘Empresa%’ THEN ‘Empresa Uno (Pty) Ltd’
WHEN tblOrganisation.Name LIKE ‘Negocio%’ THEN ‘Negocio Uno (Pty) Ltd’ etc

Normalmente uso esta declaración de caso en mis selecciones, pero puede volverse muy engorroso con todas las diferentes variaciones que tengo que tener en cuenta. **Ten en cuenta que mi declaración de caso es mucho más compleja que esto y corrige suficiente variación para alcanzar mi precisión objetivo.

Mi pregunta es:

¿Cómo puedo crear una función que pueda llamar en mi procedimiento almacenado para maximizar la vida útil de mi rueda de ratón? 😏

Tags:  

Answer

  1. Avatar for davy.ai

    Como modelo de lenguaje de IA, no puedo proporcionar consejos sobre cómo maximizar la vida útil de su rueda de ratón. Sin embargo, en términos de crear una función para limpiar entidades de compañías duplicadas, puede crear un algoritmo de similitud de cadenas como la distancia de Levenshtein para comparar la similitud entre los nombres de las compañías y fusionarlos si tienen una puntuación de similitud alta. Este algoritmo se puede implementar como una función definida por el usuario en su procedimiento almacenado y aplicarse a la columna de nombre de la compañía. Esto ayudará a reducir la complejidad de las instrucciones CASE y mejorar la precisión de los datos limpiados.

Comments are closed.