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

为表中的帐户添加上一个日期的新列

濮献
2023-03-14

共有1个答案

诸嘉澍
2023-03-14

解决方案是使用滞后为1的Windows功能。

import org.apache.spark.sql.expressions.Window

val df = load_my_df()

val frame = Window.partitionBy("acct_number").orderBy("date")
val df_new = df.withColumn("prev_balance", lag("balance", 1, null).over(frame))


这里有很好的示例:https://sparkbyexamples.com/spark/spark-sql-window-functions/

文档:https://databricks.com/blog/2015/07/15/internotion-window-functions-in-spark-sql.html

 类似资料:
  • 我有两个帐户和两个线程。1个线程将钱从1个帐户转到2个帐户,2个线程将钱从2个帐户转到1个帐户,当然前提是有足够的钱。我需要了解死锁情况,并解决死锁情况以确认安全转移。以下是我目前的想法: 账户.java 主类 传输线程.java 为了安全转移,我决定将存款和取款两种方法同步。但怀疑用方法运行实现。我有正确的实现吗?如果不是,解释和纠正将不胜感激。

  • 问题内容: 如何将n小时添加到Date对象?我找到了另一个在StackOverflow上使用几天的示例,但仍然不知道如何使用小时。 问题答案: 检查日历类。它具有(和其他一些)允许时间操纵的方法。这样的事情应该起作用。

  • 问题内容: SELECT x FROM SomeClass WHERE x.dateAtt BETWEEN CURRENT_DATE AND (CURRENT_DATE + 1 MONTH) 在上面的JPQL语句中,SomeClass具有memebr ,它是a 并具有注释。 我需要一种方法来做一下-在当前状态下这显然是错误的-但找不到带有JPQL的date函数的文档。 谁能指出我指向 记录JPQL

  • 问题内容: 如何在where子句中检查的日期中增加一个月? 例如: 问题答案:

  • 问题内容: 我希望有人可以帮助我。 我想在数据库日期中增加一个月,但我想防止在最后一天的两个月中跳过两个月。 例如,我可能有: 2009年1月31日 我想得到 2009年2月28日 并不是 2009年3月2日 下一个日期是 2009年3月28日 2009年6月28日 等等。 oracle中是否已经有执行这种操作的功能? 编辑 是的 我想每个月将具有某些状态的所有记录复制到下一个(因此用户不必每月再

  • 我在从一个表中插入一个列的值作为另一个表中的列时遇到了麻烦。我在col1中有一些值的表A:和另一个列等于col1值的表B。 我想把表A,col1中的其余值添加为表B中的列。请帮助我解决我的问题。我正在使用SQL server 2012。