Pesquisar

Comando mysql

09/05/2021 às 09:44

Descrição do Projeto:

Preciso criar um select no mysql que seja ágil.

O select deverá da como resultado a tabela menor do lado direito da imagem em anexo.

Tabela de origem contém muitos dados e múltiplos usuários acessam a tabela simultaneamente.

a tabela de origem é gerada já via um select criado da conjunção de 4 tabelas.

segue select atual.

Tempo de execução de 2 segundos! Preciso de algo mais rápido.

select
tabela1.id_contrato,
tabela1.quantidadetotal quantidade_total,
IFNULL(tabela2.quantidade_cliente, 0) quantidade_cliente,
tabela2.id_cliente
from
(
select
tcontrato.id id_contrato,
sum(titemxpesquisacoletiva.quantidade) quantidadetotal
from
tclientexassociacao,
tcontrato,
titemxpesquisacoletiva,
tvencedorpesquisacoletiva
where
tclientexassociacao.id_cliente=$id_cliente and
tclientexassociacao.status='1' and
tclientexassociacao.id_associacao = tcontrato.id_cliente and
tcontrato.status='confirmadoassociacao'and
tcontrato.validade>='$data' and
titemxpesquisacoletiva.id_contrato = tcontrato.id and
tvencedorpesquisacoletiva.id_itemxpesquisacoletiva = titemxpesquisacoletiva.id and
titemxpesquisacoletiva.status='1' and
(
tvencedorpesquisacoletiva.status='1' or
tvencedorpesquisacoletiva.status='Finalizado Cliente'
)
group by id_contrato
) tabela1
left join
(
select
tcontrato.id id_contrato,
sum(titemxpesquisacoletiva.quantidade) quantidade_cliente,
titemxpesquisacoletiva.id_cliente
from
tclientexassociacao,
tcontrato,
titemxpesquisacoletiva,
tvencedorpesquisacoletiva
where
tclientexassociacao.id_cliente=$id_cliente and
tclientexassociacao.status='1' and
tclientexassociacao.id_associacao = tcontrato.id_cliente and
tcontrato.status='confirmadoassociacao'and
tcontrato.validade>='$data' and
titemxpesquisacoletiva.id_contrato = tcontrato.id and
tvencedorpesquisacoletiva.id_itemxpesquisacoletiva = titemxpesquisacoletiva.id and
titemxpesquisacoletiva.id_cliente = 2303 and
titemxpesquisacoletiva.status='1' and
(
tvencedorpesquisacoletiva.status='1' or
tvencedorpesquisacoletiva.status='Finalizado Cliente'
)
group by id_contrato
) tabela2
on
tabela1.id_contrato = tabela2.id_contrato


Para apoio tenho um modelo que que preciso resolver

Habilidades desejadas:

MySQL

Arquivos anexados:

Entre ou Cadastre-se para ver os arquivos anexados.

Atividades do cliente nesse projeto:

Última visualização: 11/05/2021 às 10:52

Última interação: 10/05/2021 às 13:14

Informações adicionais

Categoria: Web, Mobile & Software
Subcategoria: Banco de Dados
Orçamento: Aberto
Nível de experiência: Iniciante
Visibilidade: Público
Propostas: 7
Propostas excluídas: 6
Interessados: 12
Valor Mínimo: R$ 50,00

Cliente

Freelancer vencedor

Propostas (1)
  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

Nenhuma proposta foi encontrada.

Carregando...
Projetos semelhantes no 99Freelas

Painel analítico em Power BI para vendas - Preciso de um painel analítico em Power BI para as vendas que realizo. Hoje, rodamos anúncios no Instagram, recebemos as leads, convertemos e gastamos com anúncios. Preciso de...

Ajuda com visual Power BI - Tenho um Power BI que traz alguns indicadores. Uso tabelas e diferentes gráficos. Preciso de ajuda para apresentar essas informações de forma mais profissional, com um esquema ...

Criação de dashboard para LibreOffice - Olá, freelancers! Preciso de alguém fera com fórmulas e dashboards! Possuo uma base de dados de gestão de pontos de colaboradores, onde essa base puxa ocorrência...

Desenvolver dashboard no Power BI - Procuro um profissional para realizar o trabalho de linkar meu ERP Tiny Olist com um dashboard no Power BI. A primeira etapa é conectar a API do Tiny ERP com o Power BI. A segunda etapa &e...

Power BI - Projeto de acompanhamento comercial - Power BI - Projeto de acompanhamento comercial.

Carregando...

Carregando...

Pesquisar

FREELANCERS
PROJETOS
Ocorreu um erro inesperado. Caso o erro persista, entre em contato conosco através do e-mail suporte@99freelas.com.br.