¿Cómo detecto qué filas cambiaron sin comparar columna por columna?
Cuaderno N°01 · Serie «Trucos de T-SQL para tu DW»
Por Javier Loria · Lectura ~12 min · SQL Server · Data Warehouse · ETL
La pregunta aparece en toda carga incremental de un data warehouse. Comparar treinta columnas a mano es lento de escribir, lento de correr y fácil de equivocar: una columna que se olvida y el cambio pasa invisible hasta que, meses después, un número no cuadra.
La solución barata y conocida es un hash por fila con HASHBYTES: una huella que resume toda la fila, para comparar una columna en vez de treinta.
Qué vas a encontrar
- Por qué la comparación columna por columna se rompe a escala y cómo un olvido pasa invisible.
- Cómo construir el hash por fila con HASHBYTES, paso a paso.
- Las trampas que arruinan el hash: NULLs, orden de columnas, concatenación y conversión de tipos.
- MD5 vs SHA2_256: cuándo importa el riesgo de colisión.
- El patrón «hash diff» aplicado a cargas dimensionales (Kimball).
- Cuándo NO conviene usar esta técnica.
