Dúvida max sem função

Re: Dúvida max sem função

por Rafael Sampaio -
Número de respostas: 0

Oi, Cláudio!

Na realidade, não. A ideia é que a subconsulta irá marcar todas as tuplas em que a idade de p2 supera a idade de p1. Quando não houver essa marcação, a idade p1 é maior. Como a consulta principal deve mostrar as idades de cujas tuplas não existem marcação ("not exists"), ela irá mostrar a maior idade entre todas. Essa ideia tem esta motivação: sejam x1, x2, x3, ... xn, não havendo nenhuma ordenação a priori entre os elementos. Tome xi e compare com todos os outros xj, com i != j. Se xi > xj, para todo j, então xi é o máximo.

Observe também que p1 é um "apelido" da tabela Pessoas. Uma instrução SELECT é da forma SELECT col1, col2, ... FROM tabela WHERE condição. Dessa forma, SELECT p1 não seria uma instrução válida.
Por fim, caso você quisesse a menor idade, bastaria mudar o sinal de comparação na subconsulta.

Tudo bem?

Abraço,
Rafael