Ir para conteúdo
Fórum Script Brasil

Dr. House

Membros
  • Total de itens

    139
  • Registro em

  • Última visita

Tudo que Dr. House postou

  1. Dr. House

    Sub select

    identar cara é arrumar o codigo. select (avg(case when operacao='V' then l.preco_unit else NULL end) - avg(case when operacao='E'then l.preco_unit else NULL end) ) as lucro_preco, ((avg(case when operacao='V' then l.preco_unit else NULL end) - avg(custo_medio_empresa_f(l.empresa, l.produto, ($data_ini::date -1))))*sum(case when operacao='V' then l.quantidade else null end) ) from lancto l join produto p on (p.grid=l.produto) join pessoa e on (e.grid=l.empresa) where tipo='C' group p.nome
  2. Dr. House

    Sub select

    Cara, se você ta somando, você tem q usar group by Deixa te dar uma dica, quando postar codigo aqui use as tags pra codigo, e se possivel identa o sql pra ficar mais facil de ler, tenta colocar um union all entre as consultas e deve trazer os 2 dados q você precisa select (avg(case when operacao='V' then l.preco_unit else NULL end) - avg(case when operacao='E'then l.preco_unit else NULL end) ) as lucro_preco,((avg(case when operacao='V' then l.preco_unit else NULL end) - avg(custo_medio_empresa_f(l.empresa,l.produto,($data_ini::date -1))))*sum(case when operacao='V' then l.quantidade else null end) ) from lancto l join produto p on (p.grid=l.produto) join pessoa e on (e.grid=l.empresa) where tipo='='C" group p.nome union all select (avg(case when operacao='V' then l.preco_unit else NULL end) - avg(case when operacao='E'then l.preco_unit else NULL end) ) as lucro_preco,((avg(case when operacao='V' then l.preco_unit else NULL end) - avg(custo_medio_empresa_f(l.empresa,l.produto,($data_ini::date -1))))*sum(case when operacao='V' then l.quantidade else null end) ) from lancto l join produto p on (p.grid=l.produto) join pessoa e on (e.grid=l.empresa) where tipo='='C" group by p.grupo; Se der certo avisa. eu não li o comando porque alem de grande, ta dificil de ler porque n ta identado, mas o union em tese resolveria. boa sorte
  3. Dr. House

    Erro

    E qual foi a mudança?
  4. Dr. House

    Erro

    aqui o erro: Role postgres does not exist você não criou a rule de login postgres. provavelmente faltou você rodar o script initdb. Eu uso fedora. No fedora, após a instalação nós rodamos o seguinte comando, para a inicializacao do banco de dados: su - postgres -c /usr/pgsql-9.2/bin/initdb Então, deve ter um comando parecido com o mac..... Tenta o site do postgres, la deve ter uma wiki
  5. aqui o erro: "pg_dump: Error message from server: out of memory" Ta sem memoria suficiente. já tentou fazer via comando? mais facil e mais rapido pg_ump -U postgres -h localhost -v -b nomedobanco > /home/drhouse/backup/nomedobackup.sql Notavelmente onde tem o -U postgres você pode substituir pelo o usuario que você criou, nomedobanco pelo nome do seu banco, onde tem localhost pelo seu servidor, nome ou ip, eu prefiro ip, e o que vem depois do > pelo lugar onde você quer salvar. Simples assim. Para restaurar você executa o seguinte comando: psql -U postgres -h localhost -f /home/drhouse/backup/nomedobackup.sql -d NomeDoNovoBanco
  6. simples. Veja esta consuta: select a.id, a.colunaB, b.tabelaA_id, b.colunaD from tabelaA a left join tabelaB b on (a.id=b.tabelaA_id) where a.ano = 2014 and b.data between '2014-01-01' and '2014-01-31' Veja que o ON foi utilizado para estabelecer a ligacao entre a tabelaA e a tabelaB. A clausula where foi utilizada para estabelecer as condiçoes da consulta. Ela so traz informacoes no ano 2014 da tabela tabelaA e a data esteja entre 1 e 31 de janeiro na tabela tabelaB. ON sempre utilizado para fazer as ligacoes. WHERE sempre utilizado para estabelecer as condicoes da consulta a ser executada. Espero que tenha ajudado.
  7. Se os 2 bancos forem no Postgresql, você tem de usar o schema para identifica-los tipo assim: insert into public.bancoB.publicacao ( select campo1, campo3, campo3 from public.bancoA.noticia ) não sei se a sintaxe ta certa, no que se refere aos () mas sei que é assim que eu faço. é q to sem nenhum exemplo aqui agora. mas você precisa usar o schema para identificar o banco. Se você não criou nenhum schema, você vai usar o padrão que é public.
  8. Dr. House

    Postgresql no Wine

    Primeiro,você vai ter que desinstalar o postgres, espero que você tenha alguma forma de backup. você pode tambem tentar resetar a senha do postgres. http://www.maisev.com/forum/programas-e-acessorios/43685-tutorial-resetando-senha-postgreesql.html Mas se você tiver backup não vejo porque fazer isso. desinstala, instala denovo e deve funcionar.
  9. véi, se eu entendi direito, pela imagem que tem ali, o campo é numérico, então não faz sentido você ter que converter já q ele já é numérico.
  10. Dr. House

    Postgresql no Wine

    Certo. Siga este tuto aqui. Este site tem varias tutos para centos fedora e distros baseadas no redhat Antes desinstale td q você tiver no seu pc referente a postgresql. td mesmo, trabalhe primeiro no postgresql, depois q ele funcionar você vai e faz no seu software. http://www.if-not-true-then-false.com/2012/install-postgresql-on-fedora-centos-red-hat-rhel/
  11. entendi nada.. da um exemplo ai! Bem vindo a area de ti. Se você aguentar kkkkkk. De logo te digo q o pg admin não é uma boa IDE. pra quem ta começando pode ate parecer fantastico. Eu trabalho com Postgres há uns 4 anos, e lhe garanto, o bicho é ruim. você pode iniciar trocando ele por uma outra ide chamada dbeaver. é uma ide baseada no eclipse, você precisa ter java instalado pra rodar ela. ela conecta com qualquer banco de dados compativel com jdbc. Se ela existisse na epoca que eu estava começando, seria muito bom! você pode encontra-la aqui: http://dbeaver.jkiss.org/
  12. Dr. House

    Postgresql no Wine

    já ta começando errado broder. Pra que instalar postgres no wine se tem postgres pra linux? Qual a distro linux que você ta utilizando? Eu tenho aplicações windows rodando via wine e que acessam o banco de dados local, tanto firebird como postgresql. Basta você colocar o caminho pro servidor e pronto. Instale o postgres na sua distro e vai funcionar.
  13. Bom dia. Tenho um banco de dados Firebird 1.5.6. Estou rodando uma consulta muuuuuuuuito grande, cheia de subqueries somando varios valores. Basicamente o que eu preciso é agrupar pelo tipo de lançamento. Porem eu tenho 7 tipos de lancamentos diferentes, o que eu fiz foi transformar esses 7 tipos em 2 usando case, e agrupar por estes 2. vou postar parte do sql (n posso postar todo) pra vocês terem uma ideia do que to falando... select distinct fo.ano, fo.idlancamento, Case fo.tipolancamento when '3' then '1' else '0' end as tipofolha, fo.data, f.cliente, (select sum(fi.valor) from lanc fo3 inner join itemlanc fi on (fo3.folha=fi.folha) and (fo3.ano=fi.ano) inner join item e on (fi.item=e.item) where fi.item in (select es.itemsys from itemsys es where es.nome = 'valor1') and fo3.tipolancamento = fo.tipolancamento and fo3.data between '2013-01-01' and '2013-01-31' and fo3.cliente=f.cliente ) as valor_base, -- --contem varias subquereies como a anterior - - from lanc fo where fo.data between '2013-01-01' and '2013-01-31' and fo.ano=2013 group by case when fo.tipolancamento = 3 then 1 else 0 end o problema é que aquando rodo esse comando, aparece a seguinte msg: Error: GDS Exception. 335544569. Dynamic SQL Error SQL error code = -104 Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause) SQLState: HY000 ErrorCode: 335544569 alguém sabe como me ajudar?
  14. você ta instalando como administrador? clica botao direito no instalavel e escolha executar como Administrador
  15. man isso q você ta falando acho q é um select insert. Eu já fiz isso em FirebirdSql, não sei se funciona no PostgreSql. bom... mas fica ai o exemplo: insert into cadastro2 select codigo as codigoCadastro2, f.funcionarios, '999' as causadesligamento, '01.01.2012' as data, 'teste' as obs from cadastro1
  16. Tem, restaura o backup em outro banco, faz um extract do banco restaurado par ao banco de producao por exemplo: se seu banco se chamar tokaki você restaura em tokaki_recup e ai extract do tokaki_recup para tokaki Espero que tenha ajudado
  17. Ola galera, to aqui de boa usando fedora 16 verne x_64. To executando um comando via psql mas ta me retornando um erro. O erro é o seguinte: ERROR: ld.so: object '/lib/libreadline.so.6' from LD_PRELOAD cannot be preloaded: ignored. Eu dei um ls -l |grep libread e retornou o seguinte: ls -l | grep libreadline lrwxrwxrwx. 1 root root 23 Ago 28 09:45 libreadline.so.6 -> /lib/libreadline.so.6.2 to usando postgresql 9.1 alguém sabe como eu concerto isso? desde já agradeço
  18. Ola pessoal, instalei o postgresql 8.4.3 aqui no meu sabayon 5.1 x86_64 com Gnome. bom, eu to tentando rodar um dump via psql, e na to conseguindo, ta me dando a seguinte msg : *************************************************************************************** psql -U postgres -w /home/vinny/db/db psql: não pôde conectar ao servidor: Arquivo ou diretório não encontrado O servidor está executando localmente e aceitando conexões no soquete de domínio Unix "/var/run/postgresql/.s.PGSQL.5432"? *************************************************************************************** o que podera ser? desde já agradeco as respostas
  19. update produto set marca="nome que voce quer" where nomeprod containing "sabonete" isso se o campo marca for uma string e você for setar o nome da marca. Agora se Marca for um campo int e você tiver de indicar o codigo da marca, então baasta trocar "nome que voce quer" pelo codigo da marca,sendo que sem asapas porque é um campo int. :ninja: espero ter ajudado
  20. Ola pessoal... to tentando conectar a um banco em firebird... a minha conexção ta usando JayBird this.urlDest = "jdbc:firebirdsql://localhost:3050//home/vinny/workspace2/l3convert/files/761/rh/dados/dprh"+empresaCodigo+".dbx ? sql_dialect=3; lc_ctype=WIN1252"; mas ta dando erro ao tentar conectar o banco.... <_< ERROR [Thread-2] (_Phylus.java:63) - FolhaDao org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (GDS Exception. 335544344. I/O error for file open "/home/vinny/workspace2/l3convert/files/761/rh/dados/dprh761.dbx" Error while trying to open file null Reason: I/O error for file open "/home/vinny/workspace2/l3convert/files/761/rh/dados/dprh761.dbx" Error while trying to open file null) :blink: eu to usando eclipse galileo no ubuntu 9.04 Obg a todos que responderem...
  21. já tentei isso irmao, mas o cmd ta colando o arquivo com o nome errado.. como eu preciso manter o "XXX" e ele é um numero que pode variar, eu usei o seguinte comando xcopy C:\vinny\elevador\dados\elevador*.dbx C:\vinny\copo\dados\copo*.dbx msa o windows ta colando como copoorXXX.dbx onde o or no final do nome, é o resto da palavra elevador... n funcionou.. tentei dar um ren no final com o codigo ren C:\vinny\elevador\dados\copoor*.dbx copo*.dbx mas o ren não renomeia varios arquivos... então.... inda to perdido....
  22. assim oh, eu preciso criar um bat, que copie o arquivo de uma pasta para outra. simples assim mas que renomei de elevadorXXX.dbx para copoXXX.dbx. onde "XXX" é o codigo dos meus clientes alguém pode me ajudar a fazer isso?? por favor!! ele deve copiar de C:\vinny\elevador\dados\ para C:\vinny\copo\dados\
  23. Ola pessoal B) Olha só,eu tenho uma aplicacao em java para fazer conversao de dados. bom, eu preciso trocar as ID's da tabela funcionarios, porem sem perder relacionamento com a tabela folha e com a tabela dependentes. Eu pensei em fazer um equiv juntamente com um contador na tabela funcionarios. so que quando vou rodar a aplicacao aparece a seguinte msg de erro <_< Exception in thread "Thread-2" java.lang.NullPointerException at br.com.link3.dp.convert.ConvertUtils.funcionariosEquiv(ConvertUtils.java:344) at br.com.link3.dp.convert.rh.agape.FuncionariosDao.makeBean(FuncionariosDao.java:120) at br.com.link3.dp.convert.rh.agape._RHAgapeDao.next(_RHAgapeDao.java:57) at br.com.link3.dp.convert.ConvertManager.export(ConvertManager.java:119) at br.com.link3.dp.convert.ConvertManager.processa(ConvertManager.java:286) at br.com.link3.dp.convert.MainForm$5.run(MainForm.java:351) :angry: Se alguém puder me ajudar eu agradeco muuuito!!
  24. Já pensou em migrar para a versão 2.0? Faça uso da função COALESCE - se não estou enganado, ela já estava disponível na versão 1.5 do Firebird. A Sintax é: coalesce(<campo/experessão>, <valor caso nulo>) No caso das sub-selects que retornam nulo, você poderia usá-la na sua consulta assim: Abraços ok modera foi mal a pergunta especifica aí. eu tentei o coaleace e não adiantou não. eu tão eu fui mais logico e tentei usar um case só que o ib expert não esta reconhecendo a funcao. eu peguei o exemplo la da pasta doc do firebird: SELECT o.ID, o.Description, CASE WHEN (o.Status IS NULL) THEN 'new' WHEN (o.Status = 1) THEN 'confirmed' WHEN (o.Status = 3) THEN 'in production' WHEN (o.Status = 4) THEN 'ready' WHEN (o.Status = 5) THEN 'shipped' ELSE 'unknown status ''' || o.Status || '''' END FROM Orders o eu estou usando o IbExpert. mas quando rodo minha consulta, gera o seguinte erro: :angry: Invalid token. Dynamic SQL Error. SQL error code = -104. Token unknown - line 3, char 19. is. a consulta é a seguinte: select distinct case (lo.codloc) when (lo.codloc is NULL) then 'funciona' else lo.codloc end from local lo inner join acumulos ac on (ac.local=lo.codloc) inner join cadfunc ca on (ac.codfun=ca.codfun) where ac.codfun=ca.codfun and ac.ano =2008 and ac.mes =1
×
×
  • Criar Novo...