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

    Meses em Coluna

    SELECT COALESCE(c.nome,'Total') as Categoria, COALESCE(s.nome,'Total') as SubCategoria , sum("valor") as Valores, coalesce(f.mes,'eu odeio nulo') as mes, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'janeiro') as janeiro, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'fevereiro') as fevereiro, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'marco') as marco, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'abril') as abril, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'maio') as maio, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'junho') as junho, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'julho') as julho, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'agosto') as agosto, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'setembro') as setembro, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'outubro') as outubro, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'novembro') as novembro, (select coalesce(sum(valor),0) from fluxo fl where fl.mes = f.mes and fl.mes ilike 'dezembro') as dezembro FROM public."fluxo" f inner join "categoria" c on c.id_cat = f.id_cat inner join "subcategoria" s on s.id_sub = f.id_sub group by rollup (c.nome,s.nome,f.mes) order by c.nome, s.nome, f.mes desc nesse caso a field mes já pode ate deixar de existir nesse caso a field mes pode ate deixar de existir
  2. Dr. House

    Meses em Coluna

    isso ai só c subcquery. cada mes uma subcquery
  3. Dr. House

    Meses em Coluna

    você qur fazer o q exatamente? between?
  4. Cara, Windows tem restricoes a certos diretorios, mova seu arquivo pra rais do C:\ abra a tela preta do windows e execute o comando: psql -h ipdoservidor -U -d nomedobanco -f arquivo.csv
  5. rapaz, nunca vi isso. mas que mal lhe pergunte, qual o tamanho desse insert, pra levar 30 minutos e faz a table sofrer?
  6. com dbeaver é simples, você executa a conulta e na parte de baixo você da um control+a depois export resultset escolhe a saida e pronto.
  7. você quer salvar a consulta ou os dados resultantes da consulta? Se for o segundo caso, você pode fazer isso usando o dbeaver. pelo pgadmin acho que não faz. pelo menos eu nunca consegui.
  8. Dr. House

    pgAdmin 4

    esse é um problema do pgadmin4. eu não uso ele porque uso dbeaver, que é extremamente melhor e conecta com qualuqer banco via jdbc. aqu eu uso p postgresql, firebird, mariadb/mysql....
  9. crie o banco de dados vazio antes: createdb -U usuario -h localhost nomedobanco depois esse comando para restaurar: psql -U usuario -h localhsot -d nomedobanco -f nomedoarquivo.sql
  10. Ta escrito ali em vermelho. O arquivo é texto, utlize psql para restaurar
  11. E qual é a mensagem de erro mesmo? Se você ta tentando fazer para postgresql, deveria ser assim: --cria o enum create type sexo as enum('F','M'); --criaa tabela create table pessoas ( id serial, nome varchar(30) not null, nascimento date, sexo sexo, peso decimal(5,2), altura decimal(3,2), nacionalidade varchar(20) default 'Brasil' ); --insere o dado insert into pessoas values (1,'2','1900-01-01','F',1,1,'brasil')
  12. Meu conselho, é você não usar pgadmin. ele é muito limitado. Teste o Dbeaver. qualquer banco de dados via jdbc. Conecto aqui pgsql, mysql, mssqlserver, firebird, mongodb.... tudo num sistema só.
  13. tlvz só porque ele não leu o pgpass. eu não sei no windows como que fica nem como configura. So sei que o conteudo do arquivo é o mesmo. mas como fica o nome e onde fica, eu realmente não sei. tem mt tempo que não uso windows para programar. Mas que bom que conseguiu.
  14. se voce não criou uma role pro usuario ccbialgumacoisa, n adianta, não vai funcionar não. faça do jeito q disse acima. deve resolver
  15. use esse comando: createdb -h localhost -U postgres nomedobanco Assim voce define que a role de usuario do banco a ser utilizado sera postgres. Como você não definiu nenhuma role, e provavelmente você ainda não configurou seu .pgpass, o sistema procurou o usuario adm do SO. Mas ele tambem não tem uma role de login. Ou você usa o parametro -U nomedarole, ou você configura seu .pgpass. Não sei no windows como funciona, mas no linux, basta criar um arquivo de texto nomea-lo como pgpass e colocar essa informacao dentro do arquivo: *:5432:*:postgres:postgres onde seria: ipdoservidor:posta:bancosdedados:usuario:senha. onde tem * indica que sera qualquer ip e qualquer banco. Espero q tenha ajudado
  16. Desculpe a demora, acho valida sim. É menos trabalho, já que a trigger já vai fazer tudo. 20171011033902 = 2017-10-11-03:39:02 você precisa fazer um split do campo. Como ele ta definido como Varchar, você poe fazer um right(campo,6) para pegar a hora:minutos:segundos de dentro da String. select right(hora_inicial,6) as horainicial, right(hora_final,6) as hora final from tabela depois você pode executar a operação que você deseja. De qualquer forma, no seu lugar eu não faria esta operação em SQL e sim usando a linguagem da sua aplicação
  17. voce criou uma role de login chamada "ccbia"? porque o erro ta dizendo q a autenticacao falhou para esse usuario
  18. Eu tenho uma pergunta: porque esse campo não é TimesTemp? 20171011033902 = 2017-10-11-03:39:02 você precisa fazer um split do campo. Como ele ta definido como Varchar, você poe fazer um right(campo,6) para pegar a hora:minutos:segundos de dentro da String. select right(hora_inicial,6) as horainicial, right(hora_final,6) as hora final from tabela depois você pode executar a operação que você deseja. De qualquer forma, no seu lugar eu não faria esta operação em SQL e sim usando a linguagem da sua aplicação
  19. facil SELECT DISTINCT on (prot_guia, prot_data, prot_id) produto, quantidade, valor FROM pedidos
  20. oh, postgres funciona assim: se tu passa um "SELECT * FROM CLIENTE", por padrão ele vai passar lowercase. Logo sua consulta vai funcionar independente da caixa. Se você mudar o padrão do sgdb, nada q já ta certinho e programado para executar vai acontecer, porque por padrão ele vai passar toLowerCase, e não vai ter nd lowercase la. No seu lugar eu simplesmente testaria se o driver utilizado na conexao atual for do postgresql, passava a consulta toda pra lowercase e td vai funcionar. Em tese a alteração seria em TODA a aplicacao, e sim no seu queryEngine (ou algo do tipo).
  21. outra coisa q você pode fazer é testar se o banco for postgresql passar um .toLower() no nome da tabela la no seu engine.
  22. abra ai o pgadmin, dbeaver ou qualquer outro sgdb manager q você use. Se você disser select * from cliente (maiusculo ou não) a consulta vai executar. o problema é seu sql injection passando a tabela dentro das aspas! não faz diferença se maiusculo ou minusculo.
  23. O problema não é o MAIUSCULO ou o minusculo, e sim as ASPAS DUPLAS "cliente"
×
×
  • Criar Novo...