0

我有一张桌子

总价格单位单位名称

我想选择 total_price/units 最低的记录。

如何在查询中执行除法然后选择具有最低值的记录?

(我也想按单位名称分组 - 即如果一个是盎司,一个是升)

4

1 回答 1

1

您只需在order by子句中使用除法:

select *
from t
order by total_price / units
limit 1;

为了安全起见——如果units是 0——你可以这样做:

select *
from t
where units <> 0
order by total_price / units
limit 1;

如果你想要这个,unit_name那么你想使用min()

select unit_name, min(total_price / units)
from t
group by unit_name
于 2013-07-06T21:10:01.130 回答