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

如何转发填充表中的空值

湛文乐
2023-03-14
问题内容

我有一个大查询表,看起来像这样:![Table
[(https://ibb.co/1ZXMH71)如您所见,大多数值都是空的。我想向前填充这些空值,这意味着使用按时间排序的最后一个已知值。

显然,有一个名为FILL的函数但是我不知道如何使用它。

这是我尝试过发布到Web UI的查询:

SELECT sns_6,Time
FROM TABLE_PATH
FILL sns_6,-1,0 order: Time

我得到的错误是:语法错误:[3:6]处出现意外的标识符“ sns_6”,我想要的是获取一个新表,其中sns_6列填充有最后一个已知值。

另外,我希望所有列都可以使用此功能,但是由于fill仅支持单个列,因此,我现在必须遍历所有列。如果有人知道如何进行迭代,那将是一个很大的收获。


问题答案:

以下是BigQuery标准SQL

我想向前填充这些空值,这意味着使用按时间排序的最后一个已知值

#standardSQL
SELECT time
  LAST_VALUE(sns_1 IGNORE NULLS) OVER(ORDER BY time) sns_1,
  LAST_VALUE(sns_2 IGNORE NULLS) OVER(ORDER BY time) sns_2
FROM `project.dataset.table`

我希望所有列都发生这种情况

您可以在下面的行中添加所需填充的列数(显然,您需要替换sns_N为真实列的名称)

  LAST_VALUE(sns_N IGNORE NULLS) OVER(ORDER BY time) sns_N


 类似资料:
  • 我有一个熊猫数据框,它有超过4列。col1中的某些值缺失,我希望根据以下方法设置这些缺失的值: 尝试根据具有相同col2, col3, col4值的记录的col1值的平均值来设置它 如果没有这样的记录,则根据具有相同col2, col3值的记录的col1值的平均值来设置它 如果仍然没有这样的记录,则根据具有相同col2值的记录的col1值的平均值来设置它 如果以上都找不到,将其设置为col1中所有

  • 并希望按列表中的值更改行C1-C3。预期产出:

  • 我有一个页眉和页脚(),中间有一个。

  • 问题内容: 我目前正在使用Page_Load中的以下代码创建和读取DataTable 我想知道如何转换此代码,以便它从SQL查询中读取?我正在尝试下面的代码,但不确定如何连接它们,以便页面加载中的数据表使用下面的SQL命令填充。 我被困在: 我希望成为 问题答案: 您需要修改方法,并在其中添加“实验”代码,然后返回。

  • 我正在创建一个战舰游戏应用程序来学习OOP,Java。我想显示一个“空海”供玩家参考放置他们的舰队。下面是我的游戏板课的开始: 我把这叫做主要的:

  • 作为我作业的一部分,我们得到了一个我们不能更改的接口,以及一些用来开发我们方法的预定义测试。 界面如下: 我正在运行的特定测试: 以及我需要从测试中创建的方法: 从测试中我可以看出,在方法中,我需要创建并用注册映射中匹配的学生填充它,然后返回列表。 我创建了以下字段:- 我搞不懂的是,如何将注册地图中的数据传递到学生列表中,以使测试中的断言为真。