我有一个数据库视图。
此时,它返回列中可以有重复条目的id
行。我想做以下事情:
SELECT DISTINCT ON (id) USING DESCRIBED BELOW RULE -- of course it is not valid sql
id
type
type
列可以有 3 个值:
x
y
z
如果存在相同id
但不同的行type
,则规则DISTINCT
如下:
x
首先选择具有类型的行y
如果没有,则选择带有类型的行x
z
如果没有x
和否,则选择带有类型的行y
所以如果我有 3 行:
id type
1 'y'
1 'x'
2 'z'
预期的结果将是
id type
1 'x'
2 'z'
有没有办法做到这一点?