
CAIO.EXE
Membros-
Total de itens
91 -
Registro em
-
Última visita
Tudo que CAIO.EXE postou
-
cara, resondi uma pergunta sua parecida no outro tópico... http://scriptbrasil.com.br/forum/index.php?showtopic=136109 acredito que para voce solucionar este problema basta utilizar a mesma ideia do outro case. Att. Caio Cardoso
-
Erica faltou uma coisinha minima.... você dizer qual o elias da ultima view(perdoe me se este não for o nome correto) que voce criou select codproduto, sum(entradaestoque) - sum(saidaestoque) as quantidadeFinal from ( select codproduto, entradaestoque, 0 as saidaestoque from ( select ee.codProduto,sum(ee.qtade) from entradaEstoque ee inner join produto p on p.codigo = ee.codProduto where ee.codProduto = 560 and ee.status = 1 group by ee.codProduto ) as a union all select codproduto, 0 as entradaestoque, saidaestoque from ( select se.codProduto, sum(se.qtdade) from saidaEstoque se inner join produto p on p.codigo = se.codProduto where se.status = 1 and se.codProduto = 560 group by se.codProduto )as a ) AS DADOS group by codproduto,entradaestoque,saidaestoque espero que seja somente este o erro. Att. Caio Cardoso
-
cara no sql funcionou..... testa ai.... IF FLAG1 <> '' BEGIN Select a.campo1, b.campo2, c.campo3 from Tabela1 a, tabela2 b, tabela3 c, tabela4 d Where a.codigo = b.codigo and b.cod_x = c.cod_x and a.campo5 = d.codigo END ELSE Select a.campo1, b.campo2, c.campo3 from Tabela1 a, tabela2 b, tabela3 c Where a.codigo = b.codigo and b.cod_x = c.cod_x abraço
-
mestre use a função LEN(campo) ou seja: SELECT..... FROM... WHERE LEN(CODBARRAS) = 6 abrs
-
cara, como é esse insert? é um bloco de inserts um depois do outro? coloca um "GO" depois de cada insert, assim eles serao executados individualmente por exemplo: create table teste ( cod int primary key, descricao varchar(100) ) go insert into teste values (1, 'teste1') go insert into teste values (1, 'teste1') go insert into teste values (2, 'teste2') go insert into teste values (3, 'teste3') go insert into teste values (2, 'teste2') go insert into teste values (4, 'teste4') abraço
-
oi Fernandinha! já tive q fazer coisa parecida, no seu caso, como você quer pegar 40 dias atras não é interessante, ao meu ver, pegar as horas e minutos, por tanto use a função LEFT para pegar só os 6 primeiros numeros(yymmdd) e o formato q você precisa colocar é o 12 ou 112 não o 120 a função completa seria essa: convert(datetime,left('0901020920',6),112) a data q eu coloquei foi 02/01/2009 09:20 - ('0901020920') eu tirei as horas left('0901020920',6) e o valor q ele me retornou foi 2009-01-02 00:00:00.000 mas se precisa msmo da hora ai fica mais complicado... não há um formato padrão no sql como o q você precisa estou faazendo uns testes aki se encontrar alguma solução facil eu entro em contato att. Caio Cardoso
-
o tamanho do codigo é fixo??? se for usa um rigth(campo, tam) se não for isso vou tentar montar uma função abrs
-
fera, explica melhor.... o q exatamente você quer fazer? mandar emails altomaticos conforme ocorra algum evento no sql, tipo execução de procedure, confirmação de job executado, login de usuario.... se for isso, primeiro você precisa criar um perfil de email em SQL Server Logs -> Database Mail depois você vai no SQL Agent -> Alerts e configura lá tentei fazer aki mas meu sql tah bichado, ou são os ermes q estao comendo meu pc, vou faze outros testes aki depois entro em contato abraço Att. Caio Cardoso
-
ola meu amigo tenho uma pequena lista de links e livros relacionados, não cheguei a ver todos os links por falta de tempo, mas é uma area q me interessa, segue abaixo: http://www.imasters.com.br/secao/bi http://www.dwbrasil.com.br/ http://www.datawarehouse.inf.br/ http://celedo.com.br/portal/index.php http://marretoman.blogspot.com/2007/07/inovao.html -------------------------------------------------------- BARBIERI, Carlos. BI – Business Intelligence – Modelagem e Tecnologia, Rio de Janeiro: Axcel, 2001 INMON, William H. Gerenciando Data Warehouse, MAKRON, 1999 KIMBALL, Ralph. The Data Warehouse Toolkit Guia completo para modelagem dimensional, Rio de Janeiro: Campus, 2002 SINGH, Harry S., Data Warehouse - Conceitos, Tecnologias, Implementação e Gerenciamento, São Paulo: MAKRON, 2001 e este link ensina como montar um cubo: http://imasters.uol.com.br/artigo/3089/sql...lysis_services/ são varios artigos espero q ajude e me encaminhe tb caso possua. forte abraço
-
tah ai cara Select count (distinct ClienteID) qtde_clientes from TB_Carros having count(carroID) > 2 acredito q seja isso q procura reporta agente depois. abcs
-
cara dá uma estruturada nessa query q fica mais facil te ajudar. pra te ajudar preciso q me ajudes
-
fera, o q você precisa é esconder a coluna T_ID, correto? digamos então q você tem um select +/- assim: SELECT T_ID, DESCRICAO FROM TABLE1 union SELECT T_ID, DESCRICAO FROM TABLE2 ORDER BY 1 para "esconder o id" faça o seguinte: SELECT DESCRICAO FROM ( SELECT T_ID, DESCRICAO FROM TABLE1 union SELECT T_ID, DESCRICAO FROM TABLE2 ) AS DADOS ORDER BY COGIDO isso sempre me ajudou em diversas ocasioes, é como criar uma view espero q te ajude, qualquer coisa estou a disposição
-
ola "edersonnves" cara segundo as formar normais, - http://pt.wikipedia.org/wiki/Normaliza%C3%..._banco_de_dados - você precisa sim criar uma 3ª tabela para fazer o relacionamento entre o BO e o Infrator, nesta 3ª tabela você precisa apenas do id dos envolvidos (BO e infrator), colocando o nome do infrator você estaria duplicando informações. Cara, posso estar enganado, mas é alguma coisa parecida com isso: create table infracao( id_bo int, id_infrator int, primary key(id_bo, id_infrator) ); alter table infracao add constraint fk_infracao foreign key (id_infrator) references infrator(id_infrator); alter table infracao add constraint fk_infracao1 foreign key (id_bo) references bo(id_bo); em relação a inserção, pode ser com trigeer, ou via comando msmo... fica a seu criterio. espero ter ajudado.
-
ai fera! acredito q seja +/- isso q você queira... SELECT convert(varchar(100),tc.Codigo_Centro_Custo), tc.Descriçao, ct.Mes_Cadastro, ct.Ano_Cadastro, Sum(ct.valor_real) AS Total FROM tipo_custo AS tc, custo_total AS ct WHERE ct.codigo_custo=tc.codigo_custo And ct.valor_real<>'' --And ct.Codigo_Contrato=65 And ct.Ano_Cadastro=2008 GROUP BY ct.codigo_contrato, tc.codigo_centro_custo, tc.Descriçao, ct.Mes_Cadastro, ct.Ano_Cadastro UNION SELECT 'xx', 'Total Mensal', ct.Mes_Cadastro, ct.Ano_Cadastro, Sum(ct.valor_real) AS Total FROM tipo_custo AS tc, custo_total AS ct WHERE ct.codigo_custo=tc.codigo_custo And ct.valor_real<>'' --And ct.Codigo_Contrato=65 And ct.Ano_Cadastro=2008 GROUP BY ct.Mes_Cadastro, ct.Ano_Cadastro não sou a favor de passar o codigo pronto, mas como não estava fazendo nada, acabei criando as tabelas aki e brincando. Se não for isso me passa mais informações q te ajudo Att Caio Cardoso
-
fera , assim por cima fica muito dificil identificar o problema, mas verifica os indices, verifica tb quanto de memoria você liberou para o sql abs
-
Ola Carol! eu faço isso sim basta criar um DTS e agenda-lo com o seguindo comando: DUMP TRANSACTION NOMEBANCO WITH NO_LOG; DBCC SHRINKDATABASE(NOMEBANCO, TRUNCATEONLY); GO Att Caio Cardoso
-
FERNADNINHA.... COMANDO MSMO EU não CONHEÇO..... MAS C você FOR NO ENTRERPRISE CLICAR COM O BOTAO DIRETO NO BANCO E IR EM PROPRIEDADES DA PRA MUDAR O INDICE DE CRESCIMENTO DO LOG. MAS PRA DEIXAR O LOG MAIS LEVE EU USO O SEGUINTE CODIGO DUMP TRANSACTION BANCO WITH NO_LOG; DBCC SHRINKDATABASE (BANCO,TRUNCATEONLY); QUEM TIVER MAIS EXPERIENCIA PODE ATE EXPLICAR MELHOR, MAS PELO ENTENDI, ESSE COMANDO REORGANIZA O LOG, DEIXANDO-O BEM MAIS LEVE.
-
senhores, há no sql 2000 algum local onde fiquem salvas as consultas executas? já vi essa funcionalidade no mysql, mas nunca procurei(precisei) no sql. o que acontece, alterei uma tabela, alterei a forma de popula-la executei e fechei a janela =\ (muito esperto não é?!) grato. caio cardoso
-
meu querido, o objeto "INTEM vendas " esta correto? esta escrito INTEM? entre os possiveis erro eu posso chutar: você não tem espaço no HD seu BD não cresce conforme a qtde de informações mas awe fala mais desse erro, copie e cola o erro todo aki passa o insert, a estrutura da tabela abraçao
-
Meu querido, o que você precisa exatamente???
-
tranquilo cara, obrigado pela preocupação em me ajudar, re-montei a procedure, ao invés de fazer com sub select, montei uma view e usei cases dentro de um cursor pra montar as colunas, ganhei performance, não ficou 100% mas consigo gerar muito mais colunas q antes. Grato.
-
CARA não FUNCIONOU, INCORRECT SYNTAX NEAR MAX DEFININDO COMO 8.000 não dá NA MESMA? ESTOU PENSANDO EM MUDAR TUDO, AO invés DE MONTAR A QUERY TODA E APRENSETAR NUMA GRADE, INSERIR LINHA POR LINHA NUMA TABELA AUXILIAR TENHO QUASE TOTAL CERTEZA QUE VOU PERDER PERFORMANCE, MAS C FOR O UNICO JEITO Q SEJA ASSIM MSMO! VERSÃO - Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) ABRAÇAO! VLW PELA AJUDA!
-
MEU LINDO DE UMA OLHADA NISSO, FORMAS NORMAIS - REGRAS PARA EVITAR REDUNDANCIAS E MELHOR A PERFORMANCE http://pt.wikipedia.org/wiki/Banco_de_dados_relacional#Depend.C3.AAncia_Funcional SE SEU BANCO CHEGAR AO 3º NVEL já ESTA BOM! ABRAÇAO
-
então cara, as variaveis q criei já estao no tamanho maximo, porém, ao invés dos 8000 caracteres a minha query retorna quase 20.000 caracteres criei tres variaveis, e no EXEC eu concateno as 3 o que ficaria +/- isso: EXEC(@sql + @sqlI + @sqlII) mas ele só executa 8.000 caracteres
-
bom dia senhores, montei uma procedure onde tenho um while que monta as colunas q terei numa grade, porém caso o usuario escolha muitos filtros, tenho uma enorme quantidade de colunas e a variavel que uso passa dos 8000 caracteres, tentei jogar em outras variaveis, mas quando dou o exec ele limita em 8000 caracteres de qualquer forma. alguém pode me dar uma dica de como contornar esse problema?