【问题标题】:mySql subquery to sum the many records of one item of a select?mySql 子查询来汇总一个选择项的许多记录?
【发布时间】:2011-11-19 03:41:31
【问题描述】:

我有一个名为 product 的表和一个名为 sold 的表。

我试图弄清楚是否有一种方法可以使用一个查询来查找所有产品,然后在结果集中为每个产品喜欢返回已售出总金额的总和。

【问题讨论】:

    标签: php sql


    【解决方案1】:

    这是一个非常基本的 SQL 连接操作:

    select product.id, sum(sold.amount)
    from product
    left join sold ON product.id = sold.product_id
    group by product.id
    

    如果您只想列出至少有一次销售的产品,请将“左连接”更改为“内连接”。

    【讨论】:

    • 非常感谢。现在假设我想再添加几个总和,但这次只针对特定的日期范围。所以我需要一天总和和所有时间总和。
    • @hcker2000 不要尝试将太多内容打包到单个查询中(您可能会使查询的效率降低)。您想从两个条件中获取数据,因此发出单独的查询。
    • 谢谢,我将把它分成两个查询。
    • @hcker:这将在 where 子句中完成,例如 WHERE DATE(sold.purchasedate) = '2011-11-18')WHERE DATE(sold.purchasedate) BETWEEN '2011-11-11' AND '2011-11-28'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多