0

假设我有下表。

mysql> desc items;
+---------------+------------------------+------+-----+---------+-------+
| Field         | Type                   | Null | Key | Default | Extra |
+---------------+------------------------+------+-----+---------+-------+
| item_value    | int(11)                | YES  |     | NULL    |       |
| item_quantity | smallint(5)            | YES  |     | NULL    |       |
+---------------+------------------------+------+-----+---------+-------+

当前 SQL 语句对于数量为 1 的项目很简单。

select sum(item_value) as total_value from items where user_id = ?

如果一行的数量超过 1 个,我想在将所有用户的值相加时考虑到这一点。跟踪每行的总金额 ( item_quantity* item_value) 是否更容易,或者我可以在 SQL 语句中进行吗?

4

1 回答 1

4

您可以在sum()语句中进行算术运算:

select sum(item_quantity * item_value) as total_value from items where user_id = ?
于 2013-07-17T01:33:48.030 回答