问题标签 [partition-by]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
285 浏览

java - Pyspark - 有效地将 DF 写入分区

我正在尝试使用 partition by 将 spark 数据帧写入 hdfs。

但它抛出java堆空间错误。

下面是集群配置和我的spark配置。

集群配置:

火花配置:

df_final 是通过读取 avro 文件并进行一些转换来创建的(非常简单的转换,如列拆分和添加具有默认值的新列)

源文件大小在15M左右

在将最终的 df 写入 hdfs 时,我遇到了 java 堆空间错误:

我什至尝试使用 spark 动态配置:

仍然有 java 堆空间错误。

我什至尝试编写没有分区的 df,但它仍然因 java 堆空间错误或 GC 开销错误而失败。

这是我遇到 java 堆空间错误的确切阶段:

如何微调我的 spark 配置以避免这个 java head space 问题?

0 投票
2 回答
210 浏览

pyspark - pyspark:获取每个子组中的最后一个观察值

我想在每分钟结束时对每只股票进行最后一次观察。我的高频数据框如下所示:

所需的输出应该像

我知道我可能必须使用partitionByandorderBy语法来获得结果,但我对这两个感到困惑。我熟悉groupbySQL 中的函数。我想知道哪个更类似于groupby功能。有人可以帮忙吗?

0 投票
1 回答
1968 浏览

mysql - ROW_NUMBER() OVER (PARTITION BY Give mysql5.7 中的语法错误

我正在使用 partition by 来获取重复的行,并且此查询在 mysql5.7 中返回语法错误

错误:

或任何其他查询

或任何其他查询仅返回重复的行(column2 和column 3 都包含相同的值repetivley),在这种情况下,输出将返回行1、3、5、6

表中的所有行:表中的所有行

查询所需的输出:查询所需的输出

谢谢你的帮助。

0 投票
1 回答
39 浏览

sql - SQL查询中的日期分组范围

我有一个 SQL 表,我在其中以格式保存包含DATE字段的记录。yyyy-mm-dd我正在尝试计算由月份范围定义的表分区的平均值,即我想按次年 8 月到 7 月之间的日期窗口对行进行分组,然后计算每个字段中的平均值分割。

由于数据可以无限增长,我怎样才能自动执行此操作,而不是使用
WHERE day BETWEEN ('1995-08-01' AND '1996-07-31' OR '1996-08-01' AND '1997-07-31')etc.. ?

表格中的样本数据

我想按足球赛季而不是年份对比赛进行分组。

0 投票
2 回答
33 浏览

sql - SQL - 查找特定组的最小值并提供有关它的扩展信息

我想介绍一下自己是最近刚刚开始使用 SQL 的人。在整个学习过程中,我遇到了一个非常具体的问题,因此,我的问题也非常具体。给定下表:

在此处输入图像描述

我的命令列表应该如何查看才能获得下表:

在此处输入图像描述

换句话说,我应该写什么来基本上显示每个国家的最低工资和它的所有者的id。我曾尝试使用 GROUP BY,但我能得到的只是每个国家/地区的最低工资,而我的目标是显示也属于最低工资的 id。

希望我的问题清楚,我感谢大家的支持。

0 投票
3 回答
555 浏览

sql - SQL 分区中的累积总和

考虑一个包含客户、排序日期和金额的表格,如下所示

我想获得一个新列,其中包含以前购买的累计花费,即

0 投票
1 回答
248 浏览

sql-server - SQL Group By 分区 By

这必须在 MS SQL Server 中完成。我相信OVER( PARTITION BY)必须使用,但我所有的尝试都失败了,我最终将记录计数到每个 ID 或其他东西......

我有这张桌子:

请注意,ID = 1 和 ID = 2 的 COLOR 值完全相同,但 ID = 3 仅共享值 COLOR = Red。

我想将表格分组如下:

这意味着 ID = 1 和 ID = 2 共享相同的 3 个颜色值,它们作为类型 1 聚合在一起。虽然 ID = 3 与 ID = 1 和 ID = 2 共享一个颜色值(即“红色” ) 其余值不共享,因此它被认为是类型 2(不同的分组)。

使用的表是简单的示例,足以复制到整个数据集,但是理论上每个 ID 可以有数百条记录,每行中的颜色值不同。但是它们是唯一的,一个 ID 在不同的行中不能具有相同的颜色。

我最好的尝试:

结果:

虽然结果很糟糕,但我尝试了不同的方法,但没有一个更好。

希望我足够清楚。

感谢您的帮助!

0 投票
1 回答
54 浏览

mysql - 如何根据MYSQL中的日期获取记录

我有样本数据

我需要获得 MAX(月)的 Run_Amount 即:2020-06-01 --> 15000

需要获取当月的 cal_amt 即:2020-05-01 --> 12000 和 0.00 也与本月相关 2020-04-01

我需要得到这样的输出:

它是示例数据,但还有另外几列我已经尝试使用MAX() 条件

谁能建议我最好的方法

0 投票
2 回答
1452 浏览

sql-server - Reset Row Number on value change, but with repeat values in partition

I'm having trouble with something very similar to this question T-sql Reset Row number on Field Change

The solution to this question is perfect, works fine. Except when I try with multiple other 'custno', it breaks down.

What I mean by that:

The introduction of a new custno breaks this solution, which works perfectly for the one custno.

I'm sure it's only a little tweak to handle multiple custno's, but this is already way beyond my capabilities and I managed to make it work for my data but that was purely by replacing column and table names. Unfortunately don't have a detailed enough understanding to resolve the issue I have.

My data looks like

effectively exactly the same. I want a Row/rank of 1 for every time the 'value' or 'who' changes, regardless if that value/who has been seen before. This is all relative to a custno. And I do see instances where a value/who can return back to the same value as well. Again, solution above handled that 'repetition' just fine... but for the one custno

I'm thinking I just need to somehow add some sort of grouping by custno in somewhere? Just not sure where or how

Thanks!

0 投票
1 回答
1009 浏览

pyspark - 在 PySpark 中的 window.partitionBy 上查找从中提取最小值的行值

我有一个像这样的 PySpark 数据框:

最后一列“min_mkt_prc_over_1month”计算为材料一个月内的最小“mkt_prc_usd_lb”(第 3 列),即材料、purchase_date 窗口的(-15 天到 +15 天):

代码是:

现在,我想看看当金额是/将是最低时的“purchase_date”是多少?

预期输出:(来自前两行)