当前位置: 首页 > 面试题库 >

SQL Server:计算表B中表A的ID出现的次数

汪学真
2023-03-14
问题内容

我有两个表:产品和订单。订单通过ProductID引用产品作为外键。我想知道每种产品已售出多少次,包括仅售出一次的产品。我几乎可以使用左联接来使其工作,但是对于所有产品,无论它们是否存在于orders表中,它仍然会为每一行提供一个计数为1的行。

有没有一种方法可以使您最终得到这样的结果?

Product | Times sold
Milk    | 5
Bread   | 18
Cheese  | 0

… 等等。


问题答案:

如果您只执行a COUNT(*),那么您COUNT(o.OrderID)会将没有订单的产品计为1 …
,这将只计算具有非null的记录OrderID

SELECT p.Product, COUNT(o.OrderID)
FROM
    Products p LEFT JOIN
    Orders o ON o.ProductID = p.ProductID
GROUP BY p.Product


 类似资料:
  • 我正在尝试计算Pandas数据帧中一个值与另一个值一起出现的次数,并计算每行的次数。 这就是我的意思: 假设我想计算与,我希望结果是: 这里的< code>freq(频率)列表示< code>a列中的值与< code>t列中的值一起出现的次数。 请注意,考虑到我的数据帧的大小,仅计算发生的次数的解决方案将导致错误的频率。 有没有办法在Python中实现这一点?

  • 问题内容: 蟒蛇 我有一个清单清单。喜欢 我想计算每个列表在主列表中出现了多少次。 我的输出应该像 问题答案: 只需使用来自:

  • 问题内容: 我有一个的类,如下所示: 如你所见,包含3个元素和一个元素。我想知道Collection框架中是否有任何API可以返回出现次数,bat或者是否有其他方法可以确定出现次数。 我发现Google的Collection 确实有一个API,该API返回一个元素出现的总数。但这仅与JDK 1.5兼容。我们的产品当前在JDK 1.6中,因此我无法使用它。 问题答案: 我很确定中的静态频率方法会派上

  • 问题内容: 我有一个Python列表,我想知道在此列表中计算项目出现次数的最快方法。在我的实际情况下,该项目可能会发生数万次,这就是为什么我想要一种快速的方法。 哪种方法:或更优化? 问题答案: a = [‘1’, ‘1’, ‘1’, ‘1’, ‘1’, ‘1’, ‘2’, ‘2’, ‘2’, ‘2’, ‘7’, ‘7’, ‘7’, ‘10’, ‘10’] print a.count(“1”) 它

  • 问题内容: 如何计算一个单词出现在字符串列表中的次数? 例如: 单词“句子”的结果是2 问题答案: 使用一个对象并在空白处分割单词。您可能还希望小写单词,并删除标点符号: 或使用仅与单词字符匹配的正则表达式: 现在,您有了一本包含每个单词计数的字典。 演示:

  • 从目标字符串的列表中查找字符串出现次数的最佳方法是什么?具体来说,我有一个列表: 我想进行优化以最小化速度和内存使用,如果这有所作为的话。就大小而言,我预计最终可能包含数百个子字符串。