我想显示现有 Orders 表中的前3条记录。为此,我需要计算每种产品的数量之和。
现有记录:
OrderNo ProductID Quantity
1 1 50
1 2 30
1 3 20
2 2 30
3 1 100
3 4 50
4 1 20
4 5 10
5 2 10
预期产量
ProductID Quantity
1 170
2 70
4 50
SUM
然后,您需要ORDER BY
以下摘要值:
SELECT TOP 3 ProductID, SUM(Quantity) as qSum
FROM Table
GROUP BY ProductID
ORDER BY qSum DESC
问题内容: 我有一个具有“约会表”和“服务表”的数据库。每个appt都有一个服务,每个服务都有一个价格。我想要的是一个查询,该查询将始终返回12行(每月一行),并包含几个月的总和(基于其服务ID)。到目前为止,我有: 当前,返回的内容如下: 问题是,如果一个月没有任何订单,我不会在查询中返回该月。我希望该月有一个记录,只是它的“ monthly_total”等于零。 以下是我希望查询返回的内容:
问题内容: 我试图从看起来像这样的数据库表结果中选择前2条记录 我试过这个查询 但是有些主题,例如失踪的地方,我什至尝试了以下链接的建议 如何选择每个组的前N行? 但是我为每个受检者得到两个以上 我究竟做错了什么? 问题答案: 您可以使用相关的子查询: 该查询通过串联三列来构造单列主键。如果您有真正的主键(如),则可以用代替。 SQL Fiddle中的示例。
我有一张桌子,大约有500万张记录。我想从这个表中读取所有的记录,并对它们进行一些处理。现在我想批量查询这些记录,比如一次1000条,处理它们并获取下一个1000条记录,等等。
问题内容: 如何在SQL(PostgreSQL)查询中选择20个随机行? 问题答案: SELECT column FROM table ORDER BY RANDOM() LIMIT 20
问题内容: 说我有一张桌子: 从给定日期开始递减时,我将如何选择找到的第一个日期。 示例:按日期查找4/1/12之前的最后一个条目。返回条目的SQL ID 2。 如果已添加: 比上面的示例将返回SQL ID 5处的条目。 我将如何表达我在SQL中的需求? 问题答案:
问题内容: 我有下表: 我想从一个特定的组中选择前20个不同的名称,该组按该组中最常见的名称排序。对于第1组,此示例的结果将返回(a-3次出现,b-2次出现和c-1次出现)。 谢谢你。 问题答案: