Mauricio Sales Postado 5 de Março de 2010 Tópicos Que Criei: 20 Tópicos/Dia: 0.00 Meu Conteúdo: 61 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 505 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 47 Denunciar Compartilhar Postado 5 de Março de 2010 Olá Estou com um problema em uma sentença SQL, ela está repetindo os registros, são 7 registros e a sentença está trazendo 35. Alguém pode me dar um help???? Segue abaixo a sentença: select f.numerodocumento, c.nomefantasia, f.historico, f.datavencimento, f.valororiginal from fcfo c, flan f, gccusto g where f.codcfo = c.codcfo and f.codccusto = g.codccusto and f.codcoligada = g.codcoligada and f.pagrec = '1' and f.statuslan in ('0','1') AND F.datavencimento >=:DATAINICIO AND F.datavencimento <=:DATAFIN AND G.NOME =:CENTROCUSTO ORDER BY f.dataop1 Agradeço a atenção Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio Sales Postado 5 de Março de 2010 Tópicos Que Criei: 20 Tópicos/Dia: 0.00 Meu Conteúdo: 61 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 505 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 47 Autor Denunciar Compartilhar Postado 5 de Março de 2010 Pessoal coloquei a sentença errada, a que está dando problema está abaixo: select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico from fcfo c, flan f, ftb1 g where f.codcfo = c.codcfo AND F.CODTB1FLX= G.CODTB1FLX AND f.datavencimento >=:DATAINICIO AND f.datavencimento <=:DATAFIN AND G.CODTB1FLX=:CONTASOPERACIONAIS AND f.pagrec = '2' AND f.statuslan = '1' order by f.datavencimento desc Agradeço a atenção Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Jair - Fórmula Postado 5 de Março de 2010 Tópicos Que Criei: 899 Tópicos/Dia: 0.14 Meu Conteúdo: 8.842 Conteúdo/Dia: 1.34 Reputação: 310 Pontos/Conquistas: 106.579 Conteúdo Resolvido: 0 Dias Ganho: 195 Status: Offline Idade: 52 Dispositivo: Windows Denunciar Compartilhar Postado 5 de Março de 2010 Pessoalcoloquei a sentença errada, a que está dando problema está abaixo: select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico from fcfo c, flan f, ftb1 g where f.codcfo = c.codcfo AND F.CODTB1FLX= G.CODTB1FLX AND f.datavencimento >=:DATAINICIO AND f.datavencimento <=:DATAFIN AND G.CODTB1FLX=:CONTASOPERACIONAIS AND f.pagrec = '2' AND f.statuslan = '1' order by f.datavencimento desc Agradeço a atenção Mauricio, faltou relacionar alguns campos entre as tabelas envolvidas. Segue o correto: Select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico From fcfo c, flan f, ftb1 g Where f.codcfo = c.codcfo AND f.CODCOLCFO = c.CODCOLIGADA and F.CODTB1FLX= G.CODTB1FLX AND F.CODCOLIGADA = G.CODCOLIGADA and f.datavencimento >=:DATAINICIO and f.datavencimento <=:DATAFIN and G.CODTB1FLX=:CONTASOPERACIONAIS and f.pagrec = '2' and f.statuslan = '1' order by f.datavencimento desc Veja ae se resolve... Deve ser isso mesmo. Vc deve ter os mesmos códigos de CLIFOR ou mesmo de CCustos em mais de uma coligada. por sinal, não é o caso de filtrar também por este campo (f.CODCOLIGADA) ? Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio Sales Postado 5 de Março de 2010 Tópicos Que Criei: 20 Tópicos/Dia: 0.00 Meu Conteúdo: 61 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 505 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 47 Autor Denunciar Compartilhar Postado 5 de Março de 2010 Mauricio, faltou relacionar alguns campos entre as tabelas envolvidas. Segue o correto: Select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico From fcfo c, flan f, ftb1 g Where f.codcfo = c.codcfo AND f.CODCOLCFO = c.CODCOLIGADA and F.CODTB1FLX= G.CODTB1FLX AND F.CODCOLIGADA = G.CODCOLIGADA and f.datavencimento >=:DATAINICIO and f.datavencimento <=:DATAFIN and G.CODTB1FLX=:CONTASOPERACIONAIS and f.pagrec = '2' and f.statuslan = '1' order by f.datavencimento desc Veja ae se resolve... Deve ser isso mesmo. Vc deve ter os mesmos códigos de CLIFOR ou mesmo de CCustos em mais de uma coligada. por sinal, não é o caso de filtrar também por este campo (f.CODCOLIGADA) ? funcionou sim Jair e tenho os mesmos códigos sim, como ficaria se eu tiver que filtrar pela coligada? Meu conhecimento em SQL é bem básico, por isso te pergunto. Obrigado pela atenção Abraço Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Dayana Fernandes Postado 5 de Março de 2010 Tópicos Que Criei: 5 Tópicos/Dia: 0.00 Meu Conteúdo: 21 Conteúdo/Dia: 0.00 Reputação: 1 Pontos/Conquistas: 145 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 40 Denunciar Compartilhar Postado 5 de Março de 2010 funcionou sim Jair e tenho os mesmos códigos sim, como ficaria se eu tiver que filtrar pela coligada?Meu conhecimento em SQL é bem básico, por isso te pergunto. Obrigado pela atenção Abraço Ficaria assim... Select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico From fcfo c, flan f, ftb1 g Where f.codcfo = c.codcfo AND f.CODCOLCFO = c.CODCOLIGADA and F.CODTB1FLX= G.CODTB1FLX AND F.CODCOLIGADA = G.CODCOLIGADA -- Recomendação: faça relacionamentos por JOIN e não diretamente no WHERE and f.datavencimento >=:DATAINICIO and f.datavencimento <=:DATAFIN and G.CODTB1FLX=:CONTASOPERACIONAIS and f.pagrec = '2' and f.statuslan = '1' --pode tirar estas aspas por se tratar de numérico, fica melhor o desempenho. AND F.CODCOLIGADA = 1 -- order by f.datavencimento desc Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio Sales Postado 8 de Março de 2010 Tópicos Que Criei: 20 Tópicos/Dia: 0.00 Meu Conteúdo: 61 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 505 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 47 Autor Denunciar Compartilhar Postado 8 de Março de 2010 Ficaria assim...Select f.codtb1flx, g.descricao, f.dataemissao, f.numerodocumento, c.nomefantasia, f.dataop1, f.valororiginal, f.valorbaixado, f.datavencimento, f.databaixa, f.historico From fcfo c, flan f, ftb1 g Where f.codcfo = c.codcfo AND f.CODCOLCFO = c.CODCOLIGADA and F.CODTB1FLX= G.CODTB1FLX AND F.CODCOLIGADA = G.CODCOLIGADA -- Recomendação: faça relacionamentos por JOIN e não diretamente no WHERE and f.datavencimento >=:DATAINICIO and f.datavencimento <=:DATAFIN and G.CODTB1FLX=:CONTASOPERACIONAIS and f.pagrec = '2' and f.statuslan = '1' --pode tirar estas aspas por se tratar de numérico, fica melhor o desempenho. AND F.CODCOLIGADA = 1 -- order by f.datavencimento desc Muito obrigado pela ajuda, a sentença funcionou direitinho. Valeu Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
markitu Postado 8 de Março de 2010 Tópicos Que Criei: 110 Tópicos/Dia: 0.02 Meu Conteúdo: 1.391 Conteúdo/Dia: 0.21 Reputação: 17 Pontos/Conquistas: 8.047 Conteúdo Resolvido: 0 Dias Ganho: 9 Status: Offline Idade: 47 Dispositivo: Windows Denunciar Compartilhar Postado 8 de Março de 2010 Aviso Sobre MultiModeração para Membros Que bom que resolveu o problema. Agora no fórum existe o esquema de multimoderação onde o próprio usuário que abriu o post pode marcar como resolvido. Dá uma olhada no link abaixo que mostra como fazer. http://www.forumrm.com.br/index.php?showtopic=1555 Agradeceríamos se nos ajudasse já marcando o seu tópico sempre que resolvido. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Mauricio Sales Postado 8 de Março de 2010 Tópicos Que Criei: 20 Tópicos/Dia: 0.00 Meu Conteúdo: 61 Conteúdo/Dia: 0.01 Reputação: 0 Pontos/Conquistas: 505 Conteúdo Resolvido: 0 Dias Ganho: 0 Status: Offline Idade: 47 Autor Denunciar Compartilhar Postado 8 de Março de 2010 Tópico Fechado / Resolvido. O mesmo foi marcado como resolvido por não haver mais nada a resolver, pelo mesmo ter ficado parado por muito tempo sem o membro que o iniciou voltar a participar ou comentar, ou por não ter mais comentários de nenhum outro membro do Fórum. Qualquer coisa, alguma dúvida ou questionamento sobre o assunto, pode postar novamente que analisaremos, ou se preferir, favor entrar em contato com a administração ou moderação, através do link: Administradores e Moderadores que retiraremos o STATUS de RESOLVIDO do seu título. Se preferir, mande um email para admin@forumrm.com.br solicitando. Citar Link para comentar Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da conversa
Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.