假设我有一张客户地址表:
Name | AddressLine
-------------------------------
John Smith | 123 Nowheresville
Jane Doe | 456 Evergreen Terrace
John Smith | 999 Somewhereelse
Joe Bloggs | 1 Second Ave
我想从这个表中返回两个随机行,但我不想返回两个具有相同名称的行(我不想要的例子):
Name | AddressLine
-------------------------------
John Smith | 123 Nowheresville
John Smith | 999 Somewhereelse
我怎样才能在Postgres中做到这一点?
答案 0 :(得分:3)
这是一种方法:
select distinct on (name) t.*
from t
order by name, random();