la respuesta es si

select a.tarjeta,count(a.tarjeta) as cuantos ,a.dia,max(b.tfeccancel) fechaboletinado,max(a.recibo) as maxuso from(select distinct on (linea,economico,tarjeta,hreal) *,hreal::date as dia FROM monterrey.tarjetas where recibo>=current_date - 1 and recibo<=current_date -interval'1 second' and linea in (select i_idlinea as linea from monterrey.lineas where idorganizacion<20 order by linea) and tipo<=5 and tarjeta in ( SELECT iidtari::numeric(20) as tarjeta FROM dblink( 'host=ip_del_servidor dbname=nombre_bd user=Usuario password=contraseña', 'SELECT iidtari FROM transporte.a13 where tfeccancel>''2010-01-01 00:00:00''') as t( iidtari character varying(20)))
                ) *as a inner join*
(SELECT iidtari::numeric(20) as tarjeta, tfeccancel FROM *dblink*( 'host=ip_del_servidor dbname=nombre_bd user=Usuario password=contraseña', 'SELECT iidtari,tfeccancel FROM transporte.a13 where tfeccancel>''2010-01-01 00:00:00''') as t( iidtari character varying(20),tfeccancel timestamp without time zone)
) as b on a.tarjeta=b.tarjeta and a.recibo>=b.tfeccancel
group by a.tarjeta,a.dia having count(a.tarjeta)>=$excluir order by a.tarjeta, a.dia limit 200

el primero comentario que te hacia era como usar el dblink pero creo k no lo leiste!!

El 16 de marzo de 2011 09:07, Kernel <jucab...@gmail.com <mailto:jucab...@gmail.com>> escribió:


        Excerpts from Kernel's message of mié mar 16 10:04:42 -0300 2011:

            Hola ,
            Necesito hacer join entre tablas de bases de datos
            distintas y lo
            primero que he visto es DBlink, ¿esto es lo que se esta
            utilizando o hay
            otras formas?

        ¿Y por qué no las pones en una misma base de datos mejor?

    No puedo, tengo diferentes fuentes de datos, estoy preparando
    varios  cubos de datos .

    No tengo muy claro si dblink me permite hacer join , de varias
    tablas de una base de datos con otras de otra base de datos.


    Creo que la mejor solución puede se hacer el join con un ETL como
    talend, el tema es que es bastante lento.



    -
    Enviado a la lista de correo pgsql-es-ayuda
    (pgsql-es-ayuda@postgresql.org <mailto:pgsql-es-ayuda@postgresql.org>)
    Para cambiar tu suscripción:
    http://www.postgresql.org/mailpref/pgsql-es-ayuda




--
ISC Miguel Angel Hernandez Moreno

Ok, muchas gracias , pero en el mail primero no había ningun join.


-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a