Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rods2018

Query retornando duas linhas que nao era para retornar

Recommended Posts

Boa Tarde estou tendo um problema com a seguinte query....

 

select p.A1_COD,p.A1_NOME,p.ULTCOMP_CLIENTE,p.B1_COD,p.B1_DESC,p.B2_QATU,p.B2_CM1,p.B2_VFIM1,p.B2_VATU1,p.D2_PRCVEN,p.D2_QUANT,p.ULTCOMP_PRODUTO_CLIENTE,p.TOTAL_MESES from SD2010,
    (select A1_COD,A1_NOME,A1_ULTCOM as ULTCOMP_CLIENTE,B1_COD,B1_DESC,B2_QATU,B2_CM1,B2_VFIM1,B2_VATU1,D2_PRCVEN,D2_QUANT,max(D2_EMISSAO) as ULTCOMP_PRODUTO_CLIENTE,datediff(mm,max(D2_EMISSAO),getdate()) as TOTAL_MESES from SB1010
    inner join SD2010  on D2_COD = B1_COD
    inner join SB2010 SB2 on B2_COD = B1_COD
    inner join SA1010 SA1 on A1_COD = D2_CLIENTE    
    where B2_QATU > 0 and SA1.D_E_L_E_T_ <> '*' and (SB2.D_E_L_E_T_ <> '*' and (B1_TIPO = 'ME' and B1_COD not in (
        select distinct D2_COD from SD2010        
        where D_E_L_E_T_ <> '*' and (D2_EMISSAO between dateadd(mm,-2,getdate()) and  getdate() and D2_TIPO = 'N'))))
    group by A1_COD,A1_NOME,A1_ULTCOM,B1_COD,B1_DESC,B2_QATU,B2_CM1,B2_VFIM1,B2_VATU1,D2_QUANT,D2_PRCVEN) as p
--where p.TOTAL_MESES >= 2
group by p.A1_COD,p.A1_NOME,p.ULTCOMP_CLIENTE,p.B1_COD,p.B1_DESC,p.B2_QATU,p.B2_CM1,p.B2_VFIM1,p.B2_VATU1,p.D2_PRCVEN,p.D2_QUANT,p.ULTCOMP_PRODUTO_CLIENTE,p.TOTAL_MESES
order by 12 desc;

 

esta query retornar os valores corretamente mas aparecem duas linhas que não eram para aparecer ao executarem verá as duas primeiras linhas, porem não to conseguindo encontrar o problema pois ja executei as querys separadas e ambas estão funcionando alguem teria alguma ideia do que poderia ser????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conhecendo Totvs chutaria delet ou filial , mas como você expos é muito difícil saber o que seriam as "duas linhas" ...

 

Cuidado também que campos data no Totvs são internamente CHAR YYYYMMDD cuidado com cálculos de data.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por janir.matheus
      Boa tarde, peço ajuda dos membros desse fórum pois confesso estar completamente perdido.
      Tomando como base o diagrama (em anexo), preciso de uma query que retorne as empresas, seus produtos e as categorias de cada produto, sendo que cada produto pode pertencer a uma ou mais categorias.
       
      select tbl_produtos.Empresa, tbl_empresas.Nome, tbl_catprod.Categoria, tbl_classproduto.Classe, tbl_produtos.Id, tbl_produtos.Produto from tbl_produtos inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Categoria left join tbl_classproduto on tbl_catprod.Categoria = tbl_classproduto.Id; Tentei a consulta mostrada acima mas o resultado não foi o que eu esperava.
      Agradeço antecipadamente pela ajuda.

    • Por FabianoSouza
      Pessoal, por que essa query com COLLATE  não funciona?
      declare @strPesquisa varchar(30) SET @strPesquisa = 'naicle' SET @sql = 'SELECT ' SET @sql = @sql + 'ML.nome ' SET @sql = @sql + 'FROM ' SET @sql = @sql + 'dbo.minhaTab AS ML ' SET @sql = @sql + ' WHERE ' SET @sql = @sql + ' nome LIKE ' SET @sql = @sql + '''%' + @strPesquisa COLLATE Latin1_General_CI_AI + '%''' EXEC (@sql) Não acusa erro ao rodar.
      Mas não traz os registro porque está gravado como "naiclê" (com acento), o que significa que não está aplicando a COLLATE.
       
      Montando essa mesma query mas da forma tradicional, o COLLATE funciona.
       
      SELECT ML.nome FROM dbo.minhaTab AS ML WHERE nome LIKE '%'+ @strPesquisa COLLATE Latin1_General_CI_AI+'%'  
       
    • Por peterstefan
      Olá, estou com uma query aqui e preciso pegar de 2 campos diferentes os dados diferente de 0,  mais quanto tento no AND ele somente traz um resultado, o OR ele traz um dos campos com o valor 0, teria alguma forma de pegar os dados diferente de 0 dos dois campus?
      preciso pegar o idOrganizador diferente de 0 e o idPiloto diferente de 0 
       
      SELECT * FROM boletos WHERE proc = 0 AND idOrganizador !='0' AND idPiloto ='0';  
    • Por TeixeiraRamos
      Olá pessoal,
      Por favor, tem que ser feita alguma mudança no código depois que se muda para a versão Wampserver64?
      Estou tentando abrir as minhas páginas e mostra erro. Um exemplo:
       
       
      No exemplo a linha 62:
      $result = $PDO->query($sql); No phpMyAdmin fiz o teste com a sql é funcionou corretamente.
       
      Obrigado
       
       
       
    • Por william_droops
      Olá, tenho uma tabela com esta estrutura

      Quero montar uma Query que dê este resultado. 

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.