GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Boa tarde, consigo inserir os dados, só não consigo colocar a data ?

postgresql
Tags: #<Tag:0x00007fb39d85c408>

#1


#2

Você está utilizando funções de grupo no select, logo, você tem que utilizar group by.

O erro pede para que a coluna de data seja atribuída a cláusula de agrupamento.


#3

Vamos la, uma coisa não ficou clara, quando se usa group by, qualquer campo que fica no SELECT … FROM precisa estar declarado lá, logo, se vc usou:

select l.nome, ldatanascimento...

O group by precisa ser:

GROUP BY l.nome, ldatanascimento

Tanto que o erro é claro: “coluna l.datanascimento deve aparecer no GROUP BY…”

Ja coisas que usam MAX, COUNT, SUM, AVG, etc (funções de agrupamento) não precisam estar no group by pegou?


#4

ai eu não consigo separar por nome e datanascimento ao mesmo tempo né ?


#5

Desenhando fica melhor pra explicar…

nome  | dtnasc      | count
joao  | 01/01/1980  | 20
maria | 15/07/2000  | 50
jose  | 12/12/1956  | 70

Isso seria a logica para o que vc quer, logo se precisar trazer 1, ja te mostrei o esquema do order by + limit 1


#6


#7

Agora a brincadeira muda um pouco na contagem…
E ja te falei antes, posta a query, evite imagens, agora mesmo preciso escrever tudo sendo que ficaria mais facil e rapido eu alterar a query que vc postar, ajude a gente também caramba! :joy:

SELECT l.nome, l.datanascimento, COUNT(al.idLocatario) FROM ...
GROUP BY al.idLocatario, l.nome, l.dataNascimento ...

Ai um pulo do gato, no GROUP BY o idLocatario está la, mas vc não precisa mostrar no SELECT pegou? o contrário não se aplica ok? fica esperto e boa sorte!


#8

Seria esta a resposta correta ?
Select l.nome, l.datanascimento , count(al.idlocatorio) from locatorio l , aluguel al
Where l.idlocatorio =al.idlocatorio group by al.idlocatorio, l.nome, l.datanascimento
order by count(al.idlocatorio) DESC LIMIT 1;


#9

Isso é vc quem vai dizer jovem, a gente aqui só ensina a pescar, sucesso!


#10

amigo , é para hoje isso ai, o foda que eu vi aqui , ele não tá contando


#11

não adianta birra cara, ninguém mandou chegar em cima da hora e querer tudo pronto, talvez estourar o prazo vai te fazer aprender na marra além do mais não sou obrigado te ajudar, faço por livre e espontânea vontade e como te falei a gente só ensina pescar não traz peixe pronto assadinho na brasa, sorte pra vc irmão, abraço!


#12

Mesmo assim te agradeço cara.