none
Query para identificar Orçamentos Identicos (mesmo número de produtos, mesmos produtos e mesmas quantidades) RRS feed

  • Pergunta

  • Bom dia, 

    gostaria de saber como construir uma query para identificar orçamentos que foram criados em minha base de dados e que são idênticos no que diz respeito a número de produtos dentro do orçamentos, produtos iguais e quantidades iguais . Exemplo:

    Orçamento  1 - Cliente A

     Produto A - Qtde.5

     Produto B - Qtde.10

    Orçamento  2 - Cliente B

     Produto A - Qtde.5

     Produto B - Qtde.10

    Os dois orçamentos possuem o mesmo número de produtos inseridos nele, os mesmos produtos com as mesmas quantidades, é isso que quero selecionar , somente casos assim ...

    quarta-feira, 23 de outubro de 2019 10:56

Todas as Respostas

  • Deleted
    quarta-feira, 23 de outubro de 2019 11:06
  • Problema com Inserção do ReportViewer - Formulário,

       Talvez ajude:
    Select *
    From Orcamento t1
    Where       exists (select Produto, Cliente
                        from Orcamento t2
                        where t2.Produto = t1.Produto
                        and   t2.Cliente = t1.Cliente
                        group by Produto, Cliente
                        having count(*) > 1)

    =================================================
    SQL Server - Verificar dados duplicados em dois campos simultâneos

    https://pt.stackoverflow.com/questions/22501/sql-server-verificar-dados-duplicados-em-dois-campos-simult%C3%A2neos
    =================================================
    Selecionar apenas os registros duplicados

    https://social.msdn.microsoft.com/Forums/pt-BR/df6c2caf-5568-41da-a581-341b46a3925c/selecionar-apenas-os-registros-duplicados
    =================================================


    []'s,
    Fabio I.
    quarta-feira, 23 de outubro de 2019 11:11
  • Bom dia,

    "Problema com...", experimente fazer uns testes mais ou menos dessa forma:

    select 
        o1.IdOrcamento,
        o2.IdOrcamento
    from Orcamentos as o1
    cross join Orcamentos as o2
    where
        o1.IdOrcamento <> o2.IdOrcamento and
        not exists
            (select 1 
             from Itens as i1
             full join Itens as i2
                 on 
                     i2.IdProduto = i1.IdProduto
             where
                 i1.IdOrcamento = o1.IdOrcamento and
                 i2.IdOrcamento = o2.IdOrcamento and
                 (i1.IdProduto is null or 
                  i2.IdProduto is null or
                  i1.Quantidade <> i2.Quantidade))

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 23 de outubro de 2019 12:38