我正在用users
表学习postgresql。我试图用一个搜索查询来获取最老的用户,该查询还返回他的姓名、id和城市:
我这样盯着:
db/us=# SELECT MIN(birthday) FROM users
但这只给了我最老用户的生日:
1899-10-18
我怎样才能同时得到姓名、身份证和城市?谢谢
最佳答案
如果要保留任何关联,可以加入到内联视图中:
select u.name, u.id, u.city, u.birthday
from users u
join (select min(birthday) as min_birthday from users) v
on u.birthday = v.min_birthday
或者,可以在WHERE子句中使用子查询:
select name, id, city
from users
where birthday = (select min(birthday) from users)
如果你不在乎保持领带,你可以使用限制:
select name, id, city, birthday
from users
order by birthday
limit 1
关于sql - 获取具有最高值的行的所有字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26372239/