Pesquisar na Comunidade
Mostrando resultados para as tags ''postgres''.
Encontrado 5 registros
-
Bom dia, estou com dificuldades em fazer um consulta para retornar a soma de valores usando um alias, gostaria de saber se tem outra forma de fazer a consulta, ela funciona no mysql, mas como postgres funciona de forma diferente eu não estou conseguindo fazer SELECT date_part('year', due_at) AS ano, date_part('month', due_at) AS mes, (SELECT SUM(value) FROM app_invoices WHERE user_id = 51 AND status = 'paid' AND type = 'income' AND year(due_at) = ano AND month(due_at) = mes) AS income, (SELECT SUM(value) FROM app_invoices WHERE user_id = 51 AND status ='paid' AND type = 'expense' AND year(due_at) = ano AND month(due_at) = mes) AS expense FROM app_invoices WHERE user_id = 51 AND status = 'paid' AND due_at >= DATE(now() - INTERVAL '3' MONTH) GROUP BY date_part('year', due_at), date_part('month', due_at) O erro que está retornando é ERROR: column "ano" does not exist A ideia era ele somar as faturas dos meses e como na imagem:
-
Boa tarde, Poderiam me ajudar? Gente, fiz uma consulta na minha tabela pessoa, onde tenho que retornar os pais desta pessoa. Até ai, tudo bem! Fato é que teria que voltar tudo em uma única linha! Ou seja, se a pessoa tem pai e mãe, o registro vem duplicado, apenas diferenciando o nome do pai e da mãe.Exemplo: 1. Paulo Camargo / Pai: Carlos Camargo 2. Paulo Camargo / Mãe: Sônia Camargo Como poderia estar fazendo para vir uma única tupla já com os nomes dos pais? Ex.: 1.Paulo Camargo / Pai: Carlos Camargo / Mãe: Sônia Camargo. Vejam que: Tabela PESSOA estão todas as pessoas! (Filho, pai, mãe, etc.) Tabela FILIACAO é onde faz a ligação do filho (a) com os pais. Desde já agradeço imensamente!
-
Update em uma linha validando duas colunas, como fazer?
TFernandes89 postou um tópico no fórum SQL Server
Bom dia, preciso atualizar uma linha do meu banco de dados validando duas colunas diferentes... estou tentando da seguinte forma: update produn set prun_margem=prun_margem + 1 from produtos where prod_codigo=prun_prod_codigo and prun_unid_codigo='003' and prun_unid_codigo='050' and prod_grup_codigo='10003' Tenho que atualizar a margem em +1 somente quando se tratar do grupo (prod_grup_codigo) 10003 e nas unidades (prun_unid_codigo) 003 e 050, dessa forma que estou tentando não me da erro, porem não atualiza nada, e se eu tiro a unidade 050 ele atualiza na unidade 003 normalmente. -
Como montar uma arquitetura eficaz para grandes quantidades da dados?
icorradi postou um tópico no fórum Banco de Dados
Tenho uma "rede social" de artigos, e existem mais de 5 milhoes de artigos registrados. Meu backend foi feito com Django, então foi utilizado o Postgres. Estou com um grande problema: para fazer a consulta na tabela de artigos, está SUPER lento, claro q o motivo (creio eu), é a quantidade de linhas (mais de 5 milhoes) e a quantidade de texto da coluna do corpo do artigo. Mas como arquitetar meu banco de dados para para ser tipo o wikipedia? Como deixar minha consulta rapida? Separar em varios bancos? Como essas empresas gigantes (facebook, wikipedia, amazon, google) fazem pra suportar milhoes de dados? O meu problema será q é o Postgres, q não é preparado pra isso? Obrigado. -
Fiz o mapeamento da atividade e Fiz o código, mas notei q da erro bem próximo as chaves. Sou iniciante, não tenho noção do erro , como o q é ou que pode ser.agradeço a ajuda! CREATE TABLE CLIENTE( cod_cliente INTEGER NOT NULL, nome_cliente VARCHAR(30) NOT NULL, num_pedido INTEGER, PRIMARY KEY(COD_CLIENTE) ); CREATE TABLE TELEFONE ( cod_cliente INTEGER NOT NULL, telefone_fixo VARCHAR (10), telefone_celular VARCHAR (10), FOREIGN KEY ( COD_CLIENTE) REFERENCES CLIENTE (COD_CLIENTE) PRIMARY KEY ( COD_CLIENTE) REFERENCES CLIENTE (COD_CLIENTE) ); CREATE TABLE EMAIL_CLIENTE ( cod_cliente INTEGER NOT NULL, email_cliente, VARCHAR (30), email2_cliente VARCHAR (30), FOREIGN KEY ( COD_CLIENTE) REFERENCES CLIENTE ( COD_CLIENTE) PRIMARY KEY ( COD_CLIENTE) REFERENCES CLIENTE (COD_CLIENTE) ); CREATE TABLE VENDA ( num_pedido INTEGER, dt_pedido TIMESTAMP, cod_pedido INTEGER, PRIMARY KEY (NUM_PEDIDO) FOREIGN KEY (COD_PRODUTO) REFERENCES PRODUTO (COD_PRODUTO); CREATE TABLE VENDA_CONTEM( num_pedido INTEGER, cod_produto INTEGER, pco_produto NUMERIC (6,0), qtd NUMERIC (6,0), PRIMARY KEY (NUM_PEDIDO) REFERENCES VENDA( NUM_PEDIDO) FOREIGN KEY ( COD_PRODUTO) REFERENCES PRODUTO ( COD_PRODUTO) ); CREATE TABLE PRODUTO ( cod_produto INTEGER, nom_produto VARCHAR (30) NOT NULL, est_produto NUMERIC (6,0), pco_produto NUMERIC (6,0), fabricante VARCHAR (30), FOREIGN KEY (NUM_PEDIDO) REFERENCES COMPRA ( NUM_PEDIDO) PRIMARY KEY (COD_PRODUTO) ); CREATE TABLE COMPRA ( num_pedido INTEGER, dta_pedido TIMESTAMP, FOREIGN KEY (NUM_PEDIDO) REFERENCES VENDA (NUM_PEDIDO) PRIMARY KEY (NUM_PEDIDO) REFERNCES VENDA(NUM_PEDIDO) ); CREATE TABLE FORNECEDOR ( cod_fornecedor INTEGER, nom_fornecedor VARCHAR (30) NOTT NULL, rua_local VARCHAR (30), numero_local VARCHAR (30), PRIMARY KEY ( COD_FORNECEDOR) ); CREATE TABLE TELEFONE_FORNECEDOR( cod_fornecedor INTEGER, telefone1 VARCHAR (10), telefone2 VARCHAR (10), FOREIGN KEY ( COD_FORNECEDOR) REFERENCES FORNECEDOR ( COD_FORNECEDOR) PRIMARY KEY ( COD_FORNECEDOR) REFERENCES FORNECEDOR ( COD_FORNECEDOR) ); CREATE TABLE EMAIL_FORNECEDOR ( cod_fornecedor INTEGER, email1_fornecedor VARCHAR (30), email2_fornecedor VARCHAR (30), FOREIGN KEY (COD_FORNECEDOR) REFERENCES FORNECEDOR ( COD_FORNECEDOR) PRIMARY KEY ( COD_FORNECEDOR) REFERENCES FORNECEDOR ( COD_FORNECEDOR) );