sql server - sp_addlinkedserver - Uniones ambiguas a la izquierda en MS Access
sql server sp add linked server username password (2)
Quiero convertir la siguiente consulta de T-SQL
SELECT
*
FROM
A LEFT JOIN
B ON A.field1 = B.field1 LEFT JOIN
C ON C.field1 = A.field2 AND
C.field2 = B.field2
a Jet SQL.
Ahora MS Access no acepta consultas ambiguas. ¿Cómo puedo hacer eso? No puedo poner la segunda comparación en la cláusula WHERE
. ¿Por qué? Porque mi escenario es que estoy seleccionando registros que no existen en C.
¿Cómo seleccionar todos los registros de una tabla que no existen en otra tabla?
Ahora, ¿cómo es eso en MS Access? Gracias de antemano por su tiempo y experiencia.
De la Ayuda LEFT JOIN, RIGHT JOIN Operations
Puede vincular varias cláusulas ON. Consulte la discusión sobre la vinculación de cláusulas en el tema INNER JOIN para ver cómo se hace esto.
También puede vincular varias cláusulas ON en una declaración JOIN, utilizando la siguiente sintaxis:
SELECT fields
FROM table1
INNER JOIN table2 ON table1.field1 compopr table2.field1
AND ON table1.field2 compopr table2.field2)
OR ON table1.field3 compopr table2.field3)];
Pero funciona esto (parece que hay un error en la ayuda):
SELECT *
FROM A
LEFT JOIN B ON A.field1 = B.field1
LEFT JOIN C ON (C.field1 = A.field2 AND C.field2 = B.field2)
Necesita una tabla derivada para que esto funcione en MS Access:
SELECT *
FROM (
SELECT A.Field1, A.Field2 As A2, B.Field2
FROM A
LEFT JOIN B ON A.field1 = B.field1) AS x
LEFT JOIN C ON x.A2 = C.field1 AND x.field2= C.field2