如何从 Postgres 中的 table 获取不同的值
How to get distinct values from table in Postgres
我有一个包含 20 列的 table,我想获取每列的不同值
所以如果我有
A B C D ....
----------
z c c d
z f c f
a c f d
z c c d
b f b d
z c a d
我想回去
{ 'A':[z,a,b],
'B':[c,f],
'C': [c,f,b,a]
'D': [d,f]
....
}
查询会是什么样子?
也许你需要
SELECT array_agg(DISTINCT a) a,
array_agg(DISTINCT b) b,
array_agg(DISTINCT c) c,
array_agg(DISTINCT d) d
FROM test;
?
我有一个包含 20 列的 table,我想获取每列的不同值
所以如果我有
A B C D ....
----------
z c c d
z f c f
a c f d
z c c d
b f b d
z c a d
我想回去
{ 'A':[z,a,b],
'B':[c,f],
'C': [c,f,b,a]
'D': [d,f]
....
}
查询会是什么样子?
也许你需要
SELECT array_agg(DISTINCT a) a,
array_agg(DISTINCT b) b,
array_agg(DISTINCT c) c,
array_agg(DISTINCT d) d
FROM test;
?