[firebase-br] Query Muito lenta!!! Parte II
Zottis
bzottis em ig.com.br
Qua Jul 11 08:21:30 -03 2012
....Na tabela principal(Clientes) tenho campos calculados.
NOME_MONTADO COMPUTED BY (NOME_FANTASIA || ' - '||
RAZAO_SOCIAL || ' - '|| (select E.Sigla from Empresa E where Cod_empresa =
E.Codigo)),
PROXIMA_COLETA COMPUTED BY (cast(
(select max(F.Data_Coleta)from Far_Mtr F where
F.cod_cliente = Clientes.cod_cliente)
+ Clientes.Intervalo_coleta AS date)),
SERASA COMPUTED BY (case
when (SELECT COUNT (CT.cod_conta) FROM ctarec CT WHERE
CT.cod_cliente = CLIENTES.cod_cliente and CT.Deletado = 'N' AND CT.serasa =
'S' )> 0 then 'S'
when (SELECT COUNT (CT.cod_conta) FROM CTAREC CT WHERE
CT.cod_cliente = CLIENTES.cod_cliente and CT.Deletado = 'N' AND CT.serasa =
'S') = 0 then 'N'
end),
CENTRAL_COBRANCA COMPUTED BY (case
when (SELECT COUNT (CT.cod_conta) FROM ctarec CT
WHERE CT.cod_cliente = CLIENTES.cod_cliente and CT.Deletado = 'N' AND
CT.central_cobranca = 'S' )> 0 then 'S'
when (SELECT COUNT (CT.cod_conta) FROM CTAREC CT
WHERE CT.cod_cliente = CLIENTES.cod_cliente and CT.Deletado = 'N' AND
CT.central_cobranca = 'S') = 0 then 'N'
end),
COM_COMODATO COMPUTED BY (case
when (SELECT COUNT (CMT.cod_comodato)
FROM comodato CMT WHERE CMT.cod_cliente = CLIENTES.cod_cliente ) > 0 then
'S'
when (SELECT COUNT (CMT.cod_comodato)
FROM comodato CMT WHERE CMT.cod_cliente = CLIENTES.cod_cliente ) = 0 then
'N'
end)
.....
Mais detalhes sobre a lista de discussão lista