Boa tarde!
Pessoal, estou realizando uma consulta em três tabelas diferentes pelo período de dois anos (é para popular uma Fato), porém, para não ocorrer duplicidade de NFs eu sou obrigado a usar um DISTINCT, essa população está sendo feita via SSIS (SQL e SSIS 2012 em um pacote novo e meu, em minha estação). Ao realizar a query, depois de 1h53min ele "começa a ler" as linhas da base. Como posso otimizar? Segue a query:
SELECTdistinct sd.D2_FILIAL as CDEMPRESA, sd.D2_CLIENTE as COD_CLI2, sd.D2_PEDIDO as PED_VENDA2, sd.D2_PRCVEN as PRC_UNI_VENDA, sd.D2_TOTAL as PREC_TOT_VENDA, sd.D2_QUANT as QTDE_FATURADO, sd.D2_EMISSAO as DT_EMISSAO, sc.C5_NOTA as NOTA_FISCAL5, s.C6_DATFAT as DT_FATURAMENTO, s.C6_VALOR as VLR_FATURADO, sd.D2_XBIMARG as MARGEM, s.C6_MLDESCO as DESCONTO, sd.D2_TES as TES, s.C6_PRODUTO as COD_PROD FROM SD2010 as sd (nolock) leftjoin SC5010 as sc on sd.D2_CLIENTE = sc.C5_CLIENTE leftjoin SC6010 as s on sc.C5_NOTA = s.C6_NOTA WHERE sd.D_E_L_E_T_ <>'*' AND sd.D2_EMISSAO >='2011-01-01'
Pergunta
ricardo.bezerra
Boa tarde!
Pessoal, estou realizando uma consulta em três tabelas diferentes pelo período de dois anos (é para popular uma Fato), porém, para não ocorrer duplicidade de NFs eu sou obrigado a usar um DISTINCT, essa população está sendo feita via SSIS (SQL e SSIS 2012 em um pacote novo e meu, em minha estação). Ao realizar a query, depois de 1h53min ele "começa a ler" as linhas da base. Como posso otimizar? Segue a query:
SELECT distinct
sd.D2_FILIAL as CDEMPRESA,
sd.D2_CLIENTE as COD_CLI2,
sd.D2_PEDIDO as PED_VENDA2,
sd.D2_PRCVEN as PRC_UNI_VENDA,
sd.D2_TOTAL as PREC_TOT_VENDA,
sd.D2_QUANT as QTDE_FATURADO,
sd.D2_EMISSAO as DT_EMISSAO,
sc.C5_NOTA as NOTA_FISCAL5,
s.C6_DATFAT as DT_FATURAMENTO,
s.C6_VALOR as VLR_FATURADO,
sd.D2_XBIMARG as MARGEM,
s.C6_MLDESCO as DESCONTO,
sd.D2_TES as TES,
s.C6_PRODUTO as COD_PROD FROM SD2010 as sd (nolock)
left join SC5010 as sc on
sd.D2_CLIENTE = sc.C5_CLIENTE
left join SC6010 as s on
sc.C5_NOTA = s.C6_NOTA
WHERE sd.D_E_L_E_T_ <> '*'
AND sd.D2_EMISSAO >= '2011-01-01'
Obrigado a todos.
Ricardo.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.