我有以下sql查询:

SELECT nickname, name from users;

有些用户有名字但没有昵称,有些用户有昵称但没有名字。我想使用sql查询来检查用户是否有当前的名称或昵称,并且只返回当前的名称或昵称。结果应该是这样的:
Name
-------------
user_1_nickname
user_2_name
user_3_nickname
user_4_name

在PostgreSQL中有这样做的方法吗?

最佳答案

使用凝聚?

select coalesce(name, nickname) -- this prioritises name over nickname
from users;

10-07 21:50