如何根据整数数组列上某些聚合函数的值选择记录?

时间:2018-04-03 18:45:28

标签: sql postgresql

说我有一张桌子foos

╔════╤═══════════╗
║ id │ numbers   ║
╠════╪═══════════╣
║ 0  │ {1, 2, 3} ║
╟────┼───────────╢
║ 1  │ {4, 3, 6} ║
╟────┼───────────╢
║ 2  │ {7, 8, 9} ║
╚════╧═══════════╝

如何编写查询以根据数组列中数字的最大值或总和选择行?我想写一些类似于“选择max(数字)大于6的记录”,它返回这些记录的整行。

感谢阅读

1 个答案:

答案 0 :(得分:1)

select * from foos
where (select MAX(number) from unnest(numbers) number) > 6;

online sample