采用这样的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个价格列,所以它非常不实用......
有人能告诉我,如果有一个我不知道的功能会简化我的查询吗?
答案 0 :(得分:2)
您可以考虑使用LEAST功能。不过,您还必须列出所有价格列,如下所示:
SELECT id
FROM table
WHERE priceA = LEAST(priceA, priceB, priceC);
请参阅 SQL Fiddle 。