[firebase-br] select
Antonio Lucas Finotti Pereira
lcsfipe em gmail.com
Sex Mar 19 17:39:33 -03 2010
Paulo,
vou pegar o sql que vc passou e dar uma fuçada.
estou colocando aqui um sql que fiz, nele usei sub-queryes... a função dele
é trazer algunas informações do funcionário, e depois a data de primeira
venda/valor, ultima venda/valor, maior venda/valor e outras.
e nele eu verifico se existe algum titulo para o cliente... usei (exists).
acredito que ele possa te ajudar.
assim que fazer alguma coisa com seu sql lhe aviso.
espero ter ajudado.
att,
SELECT NOME, LPAD(CLI.CPF,20,'0') CPF, LPAD(CLI.RG,20,'0') RG,
(SELECT MIN(RT.DATAREG)
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO) DATAPRIC,
(SELECT RT.VALOR
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO
AND RT.TITULO = ( SELECT MIN(RT2.TITULO)
FROM RTITULO RT2
WHERE RT2.CODCLI = RT.CODCLI ) ) VALORPRIC,
(SELECT MIN(RT.DATAREG)
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO
AND RT.VALOR = ( SELECT MAX(RT2.VALOR)
FROM RTITULO RT2
WHERE RT2.CODCLI = RT.CODCLI ) ) DATAMAIORC,
(SELECT MAX(RT.VALOR)
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO) VALORMAIORC,
(SELECT MAX(RT.DATAREG)
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO) DATAULTC,
(SELECT MAX(RT.VALOR)
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO
AND RT.DATAREG = ( SELECT MAX(RT2.DATAREG)
FROM RTITULO RT2
WHERE RT2.CODCLI = RT.CODCLI ) )
VALORULTC,
(SELECT (SUM(RT.VALOR) - SUM(RT.VLRPAGO))
FROM RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO ) VALORDEVIDO,
(SELECT coalesce(MAX(MOV.DATAREG),'00.00.0000')
FROM MOVIMENTO MOV, RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO
AND MOV.TPESP = RT.TPDOC
AND MOV.CODDOC = RT.TITULO ) DATAULTPGTO,
(SELECT coalesce(MAX(MOV.CREDITO),0)
FROM MOVIMENTO MOV, RTITULO RT
WHERE RT.CODCLI = CLI.CODIGO
AND MOV.TPESP = RT.TPDOC
AND MOV.CODDOC = RT.TITULO
AND MOV.REGISTRO = (SELECT MAX(MOV2.REGISTRO)
FROM MOVIMENTO MOV2
WHERE MOV2.DATAREG = MOV.DATAREG
AND MOV2.TPMOV = MOV.TPMOV
AND MOV2.CODDOC = MOV.CODDOC
AND MOV2.TPESP = MOV.TPESP
AND MOV2.CODRECEITA = MOV.CODRECEITA) )
VALORULTPGTO
FROM CLIENTES CLI
WHERE CLI.CODIGO > 0
AND EXISTS (SELECT 'X'
FROM RTITULO RTT
WHERE RTT.CODCLI = CLI.CODIGO)
--
Antonio Lucas Finotti Pereira
Analista de Sistemas
antonio-lucas em msn.com
lcsfipe em gmail.com
Mais detalhes sobre a lista de discussão lista