Buenas tardes,
Lo primero es ir al grano, tengo una tabla principal con aproximadamente 8 millones de datos los cuales están por razones de negocio con mas de 50 columnas el problema es que se necesita una consulta para descartar datos no coincidentes, para explicarme mejor tengo algo así parecido.
Tabla datos
Código:
| Col1 | Col2 | Col3 | Col4 | Col5 | ....... | Col50
| 1 | 2 | AX | JC | OT | ....... | Perez |
| 5 | 1 | AX | HC | OT | ....... | Perez |
| 3 | 4 | AC | PO | YT | ....... | Perez |
| 1 | 5 | AT | BC | YP | ....... | Perez |
| 16 | 6 | AU | BY | OT | ....... | Lopez|
| 21 | 2 | BX | CC | IT | ....... | Lopez|
| 10 | 9 | AX | HC | YT | ....... | Lopez|
.
.
.
Tengo una serie de datos con las mismas columnas anteriores con las que quiero eliminar las que no corresponden a la lista previa que tiene muchos datos y estoy realizando este query
Código:
Select d.* from Datos d
LEFT OUTER JOIN TablaCol1 tc1 on tc1.Col1 = d.Col1
LEFT OUTER JOIN TablaCol1 tc2 on tc1.Col2 = d.Col2
LEFT OUTER JOIN TablaCol1 tc3 on tc1.Col3 = d.Col3
LEFT OUTER JOIN TablaCol1 tc4 on tc1.Col4 = d.Col4
LEFT OUTER JOIN TablaCol1 tc5 on tc1.Col5 = d.Col5
......
LEFT OUTER JOIN TablaCol1 tc50 on tc1.Col50 = d.Col50
Where tc1.Col1 is null
and tc2.Col2 is null
and tc3.Col3 is null
and tc4.Col4 is null
and tc5.Col5 is null
....
and tc50.Col50 is null
Como se peude observar al realizar este tipo de consulta se crean muchas anidaciones el problema es que al ser tantos datos se demora demasiado al realizar esta consulta no se si se pueda replantear esta consulta de una manera mas eficaz agradezco quien pueda quemar un poco de tiempo en esto gracias.