Tengo una BÚSQUEDA EXTERIOR IZQUIERDA muy básica para devolver todos los resultados de la tabla de la izquierda y alguna información adicional de una tabla mucho más grande. La tabla de la izquierda contiene 4935 registros, pero cuando dejé que me uniera a una tabla adicional, el recuento de registros es significativamente mayor.
Hasta donde sé, es un evangelio absoluto que una IZQUIERDA EXTERIOR IZQUIERDA devolverá todos los registros de la tabla izquierda con registros coincidentes de la tabla derecha y valores nulos para cualquier fila que no pueda coincidir, como tal, entiendo que debería será imposible devolver más filas de las que existen en la tabla de la izquierda, ¡pero está sucediendo de todos modos!
La consulta SQL sigue:
SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID
FROM SUSP.Susp_Visits LEFT OUTER JOIN
DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum
Tal vez he cometido un error en la sintaxis o mi comprensión de LEFT OUTER JOIN es incompleta, ¿espero que alguien pueda explicar cómo podría estar ocurriendo esto?
Posdata
Gracias por las excelentes respuestas, mi comprensión de LEFT OUTER JOINS ahora es mucho mejor, ¿podría alguien sugerir una forma de modificar esta consulta para que solo se devuelvan tantos registros como existen en la tabla de la izquierda?
Esta consulta es puramente para generar un informe y las coincidencias duplicadas simplemente confunden las cosas.
/Posdata