JWoord
-
Total de itens
4 -
Registro em
-
Última visita
Posts postados por JWoord
-
-
tabela1 id,data,servico (Pai)
tabela2 id, idTabela1, horaInicial, horaFinal (filha)
tabela3 id, idTabela1, horas (filha)
tabela4 id, idTabela1,kmInicial, kmFinal (filha)
É possível fazer um único select e obter como resultado uma tabela com os campos:
tabela5 id, data, service, qtd o campo qtd teria que vir: ou da tabela2 (horaFinal-horaInicial) ou da tabela3 (horas), ou da tabela4 (kmFinal-kmInicial)
Obrigado
Jairo
-
Ok Denis, entendi.
Então só usando JOIN(Select...)
Isso não diminui o desenpenho do Select. Ou seja, ele não ficaria mais lento do que usar (se fosse possível, claro) do jeito que eu estava tentando?
Muito obrigado pela ajuda.
Jairo
-
Bom dia.
É possível usar uma soma (valorTotal) de um campo do Select dentro do mesmo Select?
Tentei isso e não funciona:
SELECT nome, SUM(valor) as valorTotal, qtd, valorTotal/qtd AS valorUnitario FROM tabela1
Não gostaria de utilizer:
SELECT nome, SUM(valor) as valorTotal, qtd, SUM(valor)/qtd AS valorUnitario FROM tabela1
Ou seja, não gostaria de utilizer SUM(valor) 2 vezes.
Obrigado
Jairo
(Resolvido) Ajuda para fazer um select
em MySQL
Postado
Depois horas de pesquisa consegui resolver usando COALESCE
select a.id, a.data, a.service, coalesce(b.horaFinal-b.horaInicial, c.horas, d.kmFinal-d.kmInicial) as qtd from tabela1 a
left join tabela2 b on b.idTabela1=a.id
left join tabela3 c on c.idTabela1=a.id
left join tabela4 d on d.idTabela1=a.id