miércoles, 10 de marzo de 2010

SQL - cómo separar las condiciones de join de las condiciones de negocio

Típica consulta:

SELECT r.nombre, c.nombre
FROM Region r, Ciudad c
WHERE r.idregion=c.idregion AND c.fechafundacion>='1810-01-01'


En ella, el where mezcla condiciones de join (r.idregion=c.idregion) y de negocio (c.fechafundacion>='1810-01-01'):


En la sgte consulta, en el join+using aislamos las condiciones de join. En el where aislamos las condiciones de negocio:


SELECT r.nombre, c.nombre
FROM Region r JOIN Ciudad c USING (idregion)
WHERE c.fechafundacion>='1810-01-01'

No hay comentarios: