Olá,
Preciso listar as ordens de serviço da tabela tbOrdemServico onde QTDEProduto de tbOrdemServico seja menor que QTDEBaixa de tbBaixaOrdemServico pra isso fiz o select abaixo:
select tbCliente.Nome, tbOrdemServico.idOrdemServico, tbOrdemServico.DataEntrada
from tbOrdemServico
inner join tbCliente on tbOrdemServico.idCliente = tbCliente.idCliente
left join tbBaixaOrdemServico on tbOrdemServico.idOrdemServico = tbBaixaOrdemServico.idOrdemServico
where
(month(tbOrdemServico.DataEntrada) = month(@nDataEntrada))
and
(year(tbOrdemServico.DataEntrada) = year(@nDataEntrada))
and
(tbOrdemServico.DataCancelamento is null)
and
(tbOrdemServico.idCliente = @idCliente)
group by
tbCliente.Nome,
tbOrdemServico.idOrdemServico,
tbOrdemServico.DataEntrada,
tbOrdemServico.QTDEProduto
having sum(tbBaixaOrdemServico.QTDEBaixa) < tbOrdemServico.QTDEProduto
só que quando rodo o sql, o resultado da consulta fica em branco por que na tabela tbBaixaOrdemServico, está vazio. Isto acontece quando uso o HAVING na tabela tbBaixaOrdemservico e ela está vazia.
Obrigado.
Gilberto