Ir para conteúdo
Fórum Script Brasil

fulvio

Moderadores
  • Total de itens

    1.218
  • Registro em

  • Última visita

Tudo que fulvio postou

  1. 256 MB ficou bem grande.... rs. Ia propor a extensão dbf, mas bem provável que tenha o mesmo problema... Tente fazer uma ordenação da tabela, copiando X arquivos e migrando para vários TXT´s.
  2. fulvio

    Erro SQL 2008

    Boa tarde Tonblz, Dê uma olhada no script, pois algumas funcionalidades do 2000 para o 2005/2008 foram descontinuadas ou a sintaxe mudou. Para "forçar" uma execução, poderá alterar o Nível de Compatibilidade do seu sql 2008 (dê uma olhada na net sobre isto).
  3. beleza... precisando estamos ai!! :)
  4. Boa tarde Mateus, O certo seria então retirar as NF´s canceladas. O mais fácil é sempre contar o menor grupo.... Se você tem 100 pessoas e apenas 2 opções (sim ou não): você nota que tem mais pessoas levantando a mão para o SIM. O mais fácil é perguntar quem é NÃO e contar... rs. Da mesma forma são as NF´s. Se o conjunto todo são NF´s que irão permanecer, é melhor manipular as possíveis exclusões.
  5. Bom dia Wesley, O Excel possui limitações nas quantidades de linhas. Faça a exportação utilizando a extensão TXT.
  6. Isso é execício de curso/faculdade?
  7. Boa tarde Mateus, Não sei ao certo a estrutura das tabelas, mas ficaria mais ou menos assim: -- fazendo o insert (SELECT COUNT(*) FROM FISCALDOCJOUR_BR, EFDOCUMENT_BR WHERE FISCALDOCJOUR_BR.INVENTSITEID = SALESTABLE.INVENTSITEID AND FISCALDOCJOUR_BR.DATAAREAID = SALESLINE.DATAAREAID and EFDOCUMENT_BR.RETURNCODEDESCRIPTION LIKE('%100%') AND EFDOCUMENT_BR.ProtocolNumber <> '' AND FISCALDOCJOUR_BR.TRANSREFID = SALESTABLE.SALESID AND MONTH(EFDOCUMENT_BR.DATE) = MONTH(GETDATE()-1) AND YEAR(EFDOCUMENT_BR.DATE) = YEAR(GETDATE()-1) AND EFDOCUMENT_BR.INVENTSITEID = FISCALDOCJOUR_BR.INVENTSITEID AND EFDOCUMENT_BR.REFRECID = FISCALDOCJOUR_BR.RECID) > 0 AND notafiscal NOT IN (SELECT das notas fiscais que já existem)
  8. Boa tarde Mateus, Para melhorar a performance, o interessante seria apenas inserir as novas vendas, ajuntando os dois scripts. Ai ficaria um select pegando todas as vendas, excluindo as vendas que já esteja inserido na tabela. Desta forma você pegará apenas as vendas que realmente deverá inserir, não precisando deletar / inserir registros já existentes.
  9. Bom dia Leandro, Tente fazer desta forma: Select NOME from TABELA where STATUS = 21 and CodAluno not in (select CodAluno from TABELA where STATUS = 20)
  10. Boa tarde Jotace, A sua sintaxe está correta, bem como a sua lógica. O que me chamou a atenção na cláusula WHERE foi a referência ao campo 3 (está incorreto). Você colocou: - campo 3 Mas deveria ser: - campo3 (junto)
  11. Boa tarde Leandro, Se o aluno possui vários registros e um deles "satisfaz" sua consulta, o sql retornará o nome deste aluno. O que poderá fazer é acrescentar mais uma verificação na cláusula WHERE, excluindo alunos que foram aprovados nesta disciplina. Aí terá apenas alunos reprovados.
  12. Boa atred Marloncos, Tente utilizar o CASE então, testando os números da coluna e manipulando.
  13. Boa tarde João, O Group by e o order by devem estar somente no ultimo select. Não pode estar nos três selects. Ou então faça um select, utilizando OR para ajuntar os horários.
  14. Sim está corretíssimo!!! rs. O problema é que você está dizendo que quando altera o order by, os dados são alterados do resultado. Isto não tem como acontecer, porque o order by apenas ordena.... Acho q estamos falando da mesma coisa... :) Se preferir, posta um exemplo ai.
  15. Verifique o relacionamento entre as tabelas então. A ordenação não altera o resultSet. Se ordenar por qualquer campo, o resultado final terá que ser exatamente igual. Apenas a ordem irá alterar. Faça os testes com o total de linhas de retorno.
  16. Bom dia Danilo, Desculpa. Esqueci de retirar o resto da subquery que estava no script. Segue: Select distinct P.EmpCod, P.EntCod, v.VendCod, v.VendNome, sum(p.PedVendaValTotal) AS Total, sum(QtdVenda) QuantidadeVendaTotal From PED_VENDA P With(NoLock), VEND_PED_VENDA VP With(Nolock), vendedor v with(nolock) Where P.EMPCOD = VP.EMPCOD and P.EmpCod = 9 and P.PedVendaNum = VP.PedVendaNum and p.PedVendaStatDescr <> 'NF cancelada' and v.VendCod = vp.VendCod and P.PEDVENDADATA >= :Data_inicial and P.PEDVENDADATA <= :Data_final group by P.EmpCod, P.EntCod, v.VendCod, v.VendNome order by v.VendNome OBS.: as sintaxes utilizadas do tipo >= : não são padrão sql...
  17. Bom dia Danilo, Ok, sem problemas... :) Não sei se vai dar certo (porque não tenho as informações), mas dá pra ter uma idéia: Select distinct P.EmpCod, P.EntCod, v.VendCod, v.VendNome, sum(p.PedVendaValTotal) AS Total, sum(QtdVenda) QuantidadeVendaTotal, INNER JOIN VEND_PED_VENDA ZP on Z.EMPCOD = ZP.EMPCOD and z.PEDVENDADATA >= :Data_inicial and z.PEDVENDADATA <= :Data_final and Z.EmpCod = 9 and Z.PedVendaNum = ZP.PedVendaNum and Z.PedVendaStatDescr <> 'NF cancelada' where ZP.VendCod = VP.VendCod) From PED_VENDA P With(NoLock), VEND_PED_VENDA VP With(Nolock), vendedor v with(nolock) Where P.EMPCOD = VP.EMPCOD and P.EmpCod = 9 and P.PedVendaNum = VP.PedVendaNum and p.PedVendaStatDescr <> 'NF cancelada' and v.VendCod = vp.VendCod and P.PEDVENDADATA >= :Data_inicial and P.PEDVENDADATA <= :Data_final group by P.EmpCod, P.EntCod, v.VendCod, v.VendNome order by v.VendNome
  18. Sim, mas ai terá que colocar a clausula WHERE. Tente fazer com substring.... Referenciando as duas tabelas somente como no exmeplo, sem o where, não terá jeito. O sql exponencializa o resultado.
  19. Ok, entendido.... Como quer os ultimos 5 registros, poderá fazer um top 5, fazendo uma ordenação decrescente por data. order by data desc
  20. Boa tarde Wesley, Bem vindo ao Fórum! - Dê uma olhada no firewall, se não está bloqueando a sua conexão. - Dê uma olhada nas configurações do sql - Surface Area Configuration. Os protocolos devem estar configurados e ativos. - Dê uma olhada na porta de comunicação. Creio que o pessoal do Fórum de php também poderá te ajudar com isso. Tente lá também!!
  21. Boa tarde Danilo, Vendo o print q postou, o agrupamento (group by) deveria ser realizado apenas nos campos "Vendedor" e "NomeCliente", e fazendo a soma nos campos "Valor" e "QtdCliente" (que não deve estar no group by). Da forma que fez, o agrupamento não irá funcionar. Perceba que colocou todos os campos q deseja de retorno na cláusula group by. Fazendo assim, o sql irá agrupar apenas as linhas que tenham informações idênticas em todos os campos ao mesmo tempo. Entendido?
  22. Boa tarde Helio, O sql está exponenciando o resultado porque está faltando a cláusula WHERE. Como está referenciado duas tabelas, terá que identificar qual o relacionamento q existe entre elas.
  23. Bom dia Vitor, Ok, vamos lá: O comando substring retorna as posições que deseja em uma sequência de caracteres: SELECT SUBSTRING('ABCDEF', 1, 2) SELECT SUBSTRING('ABCDEF', 3, 1) O primeiro parâmetro do comando é a string, o segundo é a posição que deseja começar, a terceira é a quantidade de casas que deseja retornar. O comando left é bem parecido com o de cima, mas não precisa identificar onde começar, pois sempre irá começar da esquerda. Da mesma forma do comando right, que começará a ler os caracteres da direita. então vamos aos comandos: case WHEN left(col2,2)=11 and substring(col2,3,1) IN (8,9) THEN substring(col2, 1, 2) + '9' + substring(col2, 3, 12) ELSE col2 --> Caso os 2 primeiros números da esquerda seja igual a 11 e o terceiro número começe com 8 ou 9 (pra identificar que é celular. Fixo não precisa), concatenar: os dois primeiros números da esquerda + 9 + o resto dos números. Esta é a explicação. Após rodar o select e identificar que os dados estão ok, fazer o UPDATE. O update seguirá a mesma estrutura. Quando executar, o sql irá alterar todas as linhas, acrescentando o 9 para todos os números que estejam contemplados nestas clausulas. Por isso que falei que não haveria a necessidade de insert.
×
×
  • Criar Novo...