queria ajuda nessa pesquisa SQL
12/12/2005
0
Abraço a todos e espero q tenham como me ajudar!!
[size=9:103b108635]SELECT fa.nro_cheque, b.nome_bco, ccp.dt_cheque, ccp.valor AS VALORCHEQUE,
fa.nro_fat AS INV, f.nome_for, fa.dt_fat, fa.val_total AS VALORFATURA,
s.nro_file, s.dt_ini, s.dt_fim, cs.descr_ser AS SERV1, ss.descr_ser3 AS SERV2,
cs2.descr_ser AS SSERV, s.moeda_sale, s.id_moeda, s.inc_opc,
s.tot_netps, subs.tot_net, s.tot_ft, s.tot_saleps,
fs.val_conf, subs.st_pag, fa.val_fat
FROM FAT_APAG fa INNER JOIN FATSER fs
ON fa.nro_fat = fs.nro_fat
LEFT JOIN SERV s
ON fs.nro_file = s.nro_file AND fs.nro_ser = s.nro_ser
LEFT JOIN SSERV subs
ON s.nro_file = subs.nro_file AND s.nro_ser = subs.nro_ser
LEFT JOIN SERVCRES ss
ON s.nro_file = ss.nro_file AND s.nro_ser = ss.nro_ser
INNER JOIN CHEQUECP ccp
ON fa.nro_cheque = ccp.nro_cheque AND fa.id_banco = ccp.id_banco AND fa.id_agencia = ccp.id_agencia
AND fa.nro_conta = ccp.id_conta
INNER JOIN TAB_BCO b
ON fa.id_banco = b.id_bco
LEFT JOIN CADSER cs
ON s.id_ser = cs.id_ser
LEFT JOIN CADSER cs2
ON subs.id_ser = cs2.id_ser
INNER JOIN CADFOR f
ON fa.id_for = f.id_for
WHERE fa.st_pag < ´3´ AND fa.lt_ou_chq = ´C´
ORDER BY fa.nro_cheque,fa.nro_fat[/size:103b108635]
O UNION queria fazer assim :
SELECT fa.nro_cheque, b.nome_bco, ccp.dt_cheque, ccp.valor AS VALORCHEQUE,
fa.nro_fat AS INV, f.nome_for, fa.dt_fat, fa.val_total AS VALORFATURA
FROM FAT_APAG fa INNER JOIN FATSER fs
ON fa.id_fat = fs.id_fat
INNER JOIN CHEQUECP ccp
ON fa.nro_cheque = ccp.nro_cheque
AND fa.id_banco = ccp.id_banco
AND fa.id_agencia = ccp.id_agencia
AND fa.nro_conta = ccp.id_conta
INNER JOIN TAB_BCO b
ON fa.id_banco = b.id_bco
INNER JOIN CADFOR f
ON fa.id_for = f.id_for
UNION ( SELECT xxxx
FROM SERV s
ON fs.nro_file = s.nro_file AND fs.nro_ser = s.nro_ser
LEFT JOIN SSERV subs
ON s.nro_file = subs.nro_file AND s.nro_ser = subs.nro_ser
LEFT JOIN SERVCRES ss
ON s.nro_file = ss.nro_file AND s.nro_ser = ss.nro_ser
LEFT JOIN CADSER cs
ON s.id_ser = cs.id_ser
LEFT JOIN CADSER cs2
ON subs.id_ser = cs2.id_ser )
. . .
Mas nao sei se é possivel. O Arquivo de 55 Mb é o SERV, por isso queria q o JOIN com ele fosse efetuado so depois de ja ter as linhas q realmente me interessam, pois os dados nele sao os detalhes.
Obrigado de uma vez galera!!!
Thiagodede
Posts
14/12/2005
Sremulador
14/12/2005
Thiagodede
Isso eu ja sei.. queria saber se havia outros modos de fazer a consulta, de modo a agilizar. EX.. fazer um select menor primiero, q precise de 1 join so, para depois fazer os outros join, pois teriam menos linhas...
Sacou..
15/12/2005
Pereiramarcos
Clique aqui para fazer login e interagir na Comunidade :)