- Fórum
- Protheus/Microsiga/Totvs
- Instalação e Configuração Protheus
- Banco de Dados
- Consultar últimos preços de produtos vendidos X vendedor
Perguntas Consultar últimos preços de produtos vendidos X vendedor
- globsecure
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 1
- Obrigados Recebidos: 0
12 anos 1 mês atrás #5876
por globsecure
Boa tarde Pessoal,
Estou com um grande problema, um cliente meu tem 5 empresas ou seja SC6010, SC6020, SC6030... Assim por diante.
Estou fazendo uma pesquisa no banco de dados, que me deve retornar os últimos 6 meses de venda dos produtos ou seja retornar os valores que eles foram vendidos.
Minha ideia inicial foi:
Porém eu tenho que repetir isso 5 vezes, causando lentidão e até mesmo travamento do Banco de Dados. Será que eu posso deixar isso mais rapído com UNION?
Alguém tem uma ideia?
Obrigado por sua atenção.
Estou com um grande problema, um cliente meu tem 5 empresas ou seja SC6010, SC6020, SC6030... Assim por diante.
Estou fazendo uma pesquisa no banco de dados, que me deve retornar os últimos 6 meses de venda dos produtos ou seja retornar os valores que eles foram vendidos.
Minha ideia inicial foi:
SELECT
DISTINCT ip2.C6_PRODUTO as codigo_produto, (
SELECT
TOP 1 ip1.C6_PRCVEN
FROM
SC6010 ip1
WHERE ip1.C6_CLI = ip2.C6_CLI
AND
ip1.C6_LOJA = ip2.C6_LOJA
AND
ip1.C6_PRODUTO = ip2.C6_PRODUTO
ORDER BY ip1.C6_DATFAT DESC) preco_venda,
ip2.C6_CLI as codigo_cliente,
ip2.C6_LOJA as loja_cliente
FROM
SC6010 ip2
WHERE
ip2.C6_CLI
IN(
SELECT
A1_COD
FROM
SA1010
WHERE
A1_VEND = '000012'
AND A1_MSBLQL != '1'
AND D_E_L_E_T_ != '*'
)
AND ip2.C6_DATFAT >= '20120321' ORDER BY ip2.C6_PRODUTO, ip2.C6_CLI
Porém eu tenho que repetir isso 5 vezes, causando lentidão e até mesmo travamento do Banco de Dados. Será que eu posso deixar isso mais rapído com UNION?
Alguém tem uma ideia?
Obrigado por sua atenção.
Por favor Acessar ou Registrar para participar da conversa.
- poliester
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 93
- Obrigados Recebidos: 0
12 anos 1 mês atrás #6063
por poliester
Respondido por poliester no tópico Re: Consultar últimos preços de produtos vendidos X vendedor
William,
BOA TARDE!
O UNION tem a função de combinar dois ou mais resultados de um select.
Se fosse imaginar como isso seria... seria algo do tipo colocar seis ou mais campos de seis ou mais tabelas alinhados um ao lado do outro.
Particularmente, não acredito que haverá um ganho de desempenho real!
Teste aí e poste o resultado pra gente!
BOA TARDE!
O UNION tem a função de combinar dois ou mais resultados de um select.
Se fosse imaginar como isso seria... seria algo do tipo colocar seis ou mais campos de seis ou mais tabelas alinhados um ao lado do outro.
Particularmente, não acredito que haverá um ganho de desempenho real!
Teste aí e poste o resultado pra gente!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- Instalação e Configuração Protheus
- Banco de Dados
- Consultar últimos preços de produtos vendidos X vendedor
Tempo para a criação da página:0.095 segundos