Tengo que escribir una versión válida de T-SQL de consulta de la siguiente pseudo-código:¿Cómo puedo escribir una consulta T-SQL para hacer un "me gusta"?
select * from newTable where [name] like in (
select [name] from oldTable
)
No estoy seguro de cómo hacer esto. Cualquier ayuda (incluso dirigirme a una pregunta existente) sería genial. ¡Gracias!
Edit: Por algunos comentarios aclararé este caso en particular. Las tablas tienen el siguiente aspecto:
oldTable
code varchar(10)
name varchar(500)
newTable
code varchar(10)
name varchar(500)
En todos los casos en los que oldTable.code <> newTable.code, que estoy queriendo ver si el oldTable.name es como uno de los nombres en newTable.name. Básicamente, algunos de los nuevos nombres han agregado calificadores al comienzo o al final de los nombres. es decir: 'nombre antiguo' puede tener un 'nombre antiguo calificado' en la nueva tabla. Gracias de nuevo.
¿qué tal algunos ejemplos de nombres nuevos y viejos que son "como" y algunos que "no se parecen" entre sí? –
puede dar algunos datos de muestra; tiene varias soluciones a continuación que pueden funcionar, pero dependen mucho de cómo se almacenan los datos. –
@ Aaron Palmer, debe dar ejemplos reales de nombres antiguos y nuevos nombres, y si son "similares" entre sí. ¿El viejo "bbb" coincide con el nuevo "xbbb"? ¿El viejo "xyz" coincide con "abc"? el viejo "abcxyz" coincide con "abc", etc. si no quiere dar ejemplos, proporcione las reglas para encontrar coincidencias. –