当前位置: 首页 > 知识库问答 >
问题:

如何将字段从单行添加到presto sql的行聚合

吕向荣
2023-03-14
SELECT 
  id,
  fruittype,
  count(*) as fruitconsumptioncount
FROM
  (VALUES
    ( 'John', 'apple', '2017-10-15 16:35:27.000'),
    ( 'John', 'apple', '2017-10-16 16:35:27.000'),
    ( 'John', 'apple', '2017-10-17 16:35:27.000'),
    ( 'John', 'orange', '2017-10-14 16:35:27.000'),
    ( 'John', 'orange', '2017-10-15 16:35:27.000'),
    ( 'John', 'orange', '2017-10-20 16:35:27.000'),
    ( 'John', 'banana', '2017-10-18 16:35:27.000'),
    ( 'Bob', 'kiwi', '2017-10-15 16:35:27.000')
  ) as dimensions (id, fruittype, consumptiontime) 
GROUP BY
  id,
  fruittype
ORDER BY
  id,
  fruitconsumptioncount DESC`
id     fruittype    fruitconsumptioncount
Bob     kiwi         1
John    apple        3
John    orange       3
John    banana       1
id     fruittype    fruitconsumptioncount mostrecentconsumption
Bob     kiwi         1                     2017-10-15 16:35:27.000
John    apple        3                     2017-10-17 16:35:27.000
John    orange       3                     2017-10-20 16:35:27.000
John    banana       1                     2017-10-18 16:35:27.000

共有1个答案

皮弘博
2023-03-14

假设您的表是:

A:
        id    fruittype   consumptiontime
    ----------------------------------------------- 
    ( 'John', 'apple', '2017-10-15 16:35:27.000'),
    ( 'John', 'apple', '2017-10-16 16:35:27.000'),
    ( 'John', 'apple', '2017-10-17 16:35:27.000'),
    ( 'John', 'orange', '2017-10-14 16:35:27.000'),
    ( 'John', 'orange', '2017-10-15 16:35:27.000'),
    ( 'John', 'orange', '2017-10-20 16:35:27.000'),
    ( 'John', 'banana', '2017-10-18 16:35:27.000'),
    ( 'Bob', 'kiwi', '2017-10-15 16:35:27.000')

因此,如果consumptiontimedatetime数据类型或类似类型,请尝试以下操作:

SELECT id, fruittype, count(*) as fruitconsumptioncount, max(consumptiontime)
FROM A  
GROUP BY id, fruittype 
ORDER BY id, fruitconsumptioncount DESC

如果是字符串,只需转换为日期。
请参阅:Presto SQL-将日期字符串转换为日期格式

 类似资料:
  • 我正在寻找一种在ACF Pro中向中继器字段添加行的方法。我发现了这篇文章,但解决方案帖子似乎不起作用。我将描述我的问题: 我有一个名为“gebroikers”的自定义帖子类型,一个名为“logins”的中继器字段和一个可以有一个名为“data”的字段的行。我希望能够在“data”字段中的新行中添加一个值。这可能吗? 到目前为止,我的代码是:

  • 问题内容: 我的表格中有3个字段。我有一个提交按钮和一个“添加其他字段”按钮。我知道我可以使用表单类中的方法添加字段。 我是Python和Django的新手,并且陷入了一个初学者的问题;我的问题是: 当我单击“添加其他字段”按钮时,添加其他字段的过程是什么? 是否需要再次呈现表单? 我如何以及何时打电话,甚至必须打电话? 如何将参数传递给? 问题答案: 你的表单必须基于从POST传递给它的一些变量

  • 问题内容: 我在任何地方都找不到它,所以您的帮助对我非常有用:)这是该字段: FragmentCategory: 这是发送的表格: 我尝试过这样的事情: categories = fragmentCategory.objects.get(id=1), 要么: 问题答案: Django文档的整个页面都专门针对此内容,并从内容页面进行了索引。 如该页面所述,你需要执行以下操作: 要么

  • 我有一个带有ACF中继器字段的分类。我正在尝试在自定义REST APIendpoint的回调中添加行,但没有运气。该字段的方案是: 我使用以下命令向字段中添加一行-但运气不佳: 知道我做错了什么吗?添加行是否只适用于Post而不适用于Term....?我怀疑那是真的...

  • 我有一个从 IT 团队获得的数据集。他们有一个他们不愿意改变的自动提取。 文件如下所示(根据要求添加更多行) 1#|#2#|#3#|#4 数据1#|#数据2#|#data3#|#data4 数据1#|#数据2#|#data3#|#data4 cdata1#|#da#ta2#|#data3#|#数据4 (第 4 行,这是我的数据中的 # 搞砸了仅 # 的引号字符的示例) #看起来像是试图成为引号字符

  • 我的json是{[{“key1”:“value1”,“key2”:“valu2”},{“key3”:“value3”,“key4”:“valu4”}]} 如何将上面的文字修改如下。谢谢你帮助我的朋友 {"travel": [{"key1":"value1 "," key 2 ":" value 2 " },{ key3":"value3 "," key4":"value4}]}