我有一个表格,我需要在其中获取每个类别的前n个最高金额的项目。
Category Item InventoryCount
------- ----- -------------
Beverage milk 3
Beverage water 2
Beverage beer 9
Utensil fork 7
Utensil spoon 2
Utensil knife 1
Utensil spork 4
我期望的输出是前2个类别中的最高清单。
Category Item InventoryCount
------- ----- -------------
Beverage beer 9
Beverage milk 3
Utensil fork 7
Utensil spork 4
这应该为您工作。如果它不满足您的要求,请发回您需要的内容。您最初希望有25个,所以您只需将最后一个子句修改为HAVING COUNT(*) <= 25
SELECT a.item,
a.category,
a.inventorycount,
COUNT(*) AS ranknumber
FROM inv AS a
INNER JOIN inv AS b
ON (a.category = b.category)
AND (a.inventorycount <= b.inventorycount)
GROUP BY a.category,
a.item,
a.inventorycount
HAVING COUNT(*) <= 2
ORDER BY a.category, COUNT(*) DESC
如果要从表中选择更多列,只需将它们添加到SELECT
和“ GROUP BY”子句中。
仅当您要扩展“ 每个Category,foo,bar的TOP n ”时,才将这些列也添加到该INNER JOIN
子句中。
--show the top 2 items for each category and year.
SELECT a.item,
a.category,
a.year,
a.inventorycount,
COUNT(*) AS ranknumber
FROM inv AS a
INNER JOIN inv AS b
ON (a.category = b.category)
AND (a.year = b.year)
AND (a.inventorycount <= b.inventorycount)
GROUP BY a.category, a.item, a.year, a.inventorycount
HAVING COUNT(*) <= 2
ORDER BY a.year, a.category, COUNT(*) DESC
问题内容: 问题很多,但我似乎找不到与我遇到的情况相匹配的问题。我想在前n个查询中执行一些分组。我的数据看起来像这样(显然是假值)。 该表的日期范围涵盖数月,每月有数千行。我想做的是一个查询,告诉我哪个IP地址出现在每个月中最频繁。我可以使用以下方法完成一个月的操作: 但是我真正想要的是能够看到数据集中每个月的前n个。从本质上讲,这禁止了我使用我指定的where子句。当然,当我这样做的时候,我在所
问题内容: 我希望对多维numpy数组的某些部分易于阅读。对于任何数组,访问第一维都是容易的()。另一方面,访问第六维是“困难的”(尤其是阅读)。 有一个更好的方法吗?特别是有没有一种方法,在编写程序时不知道轴? 编辑:索引维不一定是最后一个维 问题答案: 如果您想要一个视图并且想要快速查看,您可以手动创建索引: 它比使用s索引快得多,并且仅慢一点: 但是可能不那么可读,因此,如果经常需要,您可能
问题内容: 我有一个具有名称,值,时间列的Oracle表。基本上,该表用于记录目的,用于存储对特定名称所做的更改,以前的值是什么以及更改时间。 我需要制定一个查询来获取特定名称的前n个更改,并且输出应具有表中的所有名称。任何帮助/建议吗? 编辑: 我需要选择11月1日,10月31日,8月31日和Ravi的Harish的详细信息。 问题答案: 这是你所追求的吗? 我的测试设置: 这是查询:
问题内容: pyspark中有一个DataFrame,其数据如下: 我期望在每个组中返回2条记录,每条记录具有相同的user_id,它们需要具有最高的得分。因此,结果应如下所示: 我真的是pyspark的新手,有人可以给我一个代码段或门户网站有关此问题的相关文档吗?万分感谢! 问题答案: 我相信您需要使用窗口函数基于和来获得每一行的排名,然后过滤结果以仅保留前两个值。 通常,官方编程指南是开始学习
我实际上有两个问题彼此相似。我的问题的简要概述如下: 我正在开发的图书馆应用程序与书籍和作者有一对多的关系,这意味着一本书可以有许多作者。一个样本作者和一本书作为图像附上。 Q1.如何搜索特定作者?对于一本只有1个作者的书,它总是有第0个索引。一本有多个作者的书怎么样?如果是这样,相同的作者也可以存在于其他索引中。我想从一个特定的作者那里得到所有的书,我想知道什么是最好的方法?
问题内容: 做到这一点的最佳方法是什么? 问题答案: 使用 array_slice() 这是PHP手册中的一个示例:array_slice 只有一个小问题 如果数组索引对您有意义,请记住这将重置并重新排列 数字 数组索引。您需要设置标志来避免这种情况。(第4个参数,自5.0.2起可用)。 例: 输出: