Estoy ocupado convirtiendo una consulta utilizando la sintaxis de estilo antiguo a la nueva sintaxis de unión. La esencia de mi consulta es la siguiente:SQL Inner Join. Condición ON frente a la cláusula WHERE
Pregunta Original
SELECT i.*
FROM
InterestRunDailySum i,
InterestRunDetail ird,
InterestPayments p
WHERE
p.IntrPayCode = 187
AND i.IntRunCode = p.IntRunCode AND i.ClientCode = p.ClientCode
AND ird.IntRunCode = p.IntRunCode AND ird.ClientCode = p.ClientCode
Nueva consulta
SELECT i.*
FROM InterestPayments p
INNER JOIN InterestRunDailySum i
ON (i.IntRunCode = p.IntRunCode AND i.ClientCode = p.ClientCode)
INNER JOIN InterestRunDetail ird
ON (ird.IntRunCode = p.IntRunCode AND ird.IntRunCode = p.IntRunCode)
WHERE
p.IntrPayCode = 187
En este ejemplo, "búsqueda original" devuelve 46 filas, donde "Nueva consulta" rendimientos a lo largo 800
¿Alguien me puede explicar la diferencia? Hubiera supuesto que estas consultas son idénticas.
Gracias Kevin, me siento como un tonto por no ver eso! – Russell
Nos sucede a todos nosotros. :-) –