我有一张桌子,每个产品有一排,以及产品在十个不同商家的价格。我希望看到的是每种产品在不同商家中的最低价格。
在Excel中这很容易,因为MIN()函数适用于任何一组单元格,无论它们是水平排列还是垂直排列。但是,SQL中的MIN()仅作用于列,因此我能够找到所有产品中最便宜的商家1等。
有没有一种优雅的方法来获得每行的最低价格? (是否存在可以执行此操作的OLAP函数,或者是否必须使用循环来解决问题?)
答案 0 :(得分:6)
在PostgreSQL中,你可以这样做:
select least(price1, price2, price3, ..)
from products
LEAST
为您提供值列表的最小值。这是MIN
的非聚合版本。