Buenas, estoy trabajando con postgresql y necesito hacer una consulta sql un poco complicada y nose como hacer.
Tengo dos tablas: reg_personal (id, nombre, dni, nacionalidad ) y otra tabla reg_fechas (id, fecha)
Quisiera hacer una secuencia sql para postgresql que me devuelva todos los registros de la tabla reg_personal que coincidad con los registro de la tabla reg_fechas, es decir que los id de ambas tablas coicidan pero que a su vez, me busque todos los registro en funcion de un rango de fechas.
Por separado es algo asi:
para buscar por rangos de fechas:
select * from reg_fechas where cast(fecha as date) between '2010-01-01' and '2010-04-01';
De esta secuencia yo sacaria todos los id segun un rango de fechas.
Como hago para buscar todos los registros de la tabla reg_personal cuyo id coicida con los id encontrados anterior, pero de una sola vez.
Por ejemplo esta consulta solo me devuelve cuatro veces el ultimo registro que encuentra en reg_fechas:
SELECT * FROM reg_fechas LEFT OUTER JOIN reg_personal ON (id = (select id from reg_fechas where cast(fecha as date) between '2010-01-01' and '2010-04-01'));
Como hago para que me devuelva todos los registros coicidentes?...tengo qe hacer si o si dos consutlas o se puede hacer en una sola secuencia sql?
Cualquier ayuda se los agradeceria.
Muchas Gracias y Saludos.-