MYSQL找到最大值

时间:2014-04-20 23:17:52

标签: mysql

采用这样的MYSQL表:

id:prod1, priceA:10, priceB:20, priceC:30,priceD:18,...
id:prod2, priceA:22, priceB:20, priceC:30,priceD:78,...
id:prod3, priceA:4, priceB:20, priceC:30,priceD:19,...

我正在尝试选择所有价格,其中priceA是3种价格中最低的,在这种情况下,prod1和prod3

我尝试使用max()但它只对一个字段起作用。

我在考虑以下几点:

SELECT id from table WHERE priceA < priceB AND priceA < priceC...,但在现实生活中,有20个价格列,所以它非常不实用......

有人能告诉我,如果有一个我不知道的功能会简化我的查询吗?

1 个答案:

答案 0 :(得分:2)

您可以考虑使用LEAST功能。不过,您还必须列出所有价格列,如下所示:

SELECT id
FROM table
WHERE priceA = LEAST(priceA, priceB, priceC);

请参阅 SQL Fiddle