小编Pra*_*han的帖子

如何获取SQL中第一个非NULL值?

我有三列数据。第一列包含 ID,第二列包含日期,第三列包含 BMI 值。我想创建第四列,该列的第一个值基于第三列的日期(升序),该第三列不为空或避免为空。

到目前为止,我已经尝试过普通形式的first_value,但没有成功。我尝试将 case when 语句内的first_value子集为

CASE 
  WHEN BMI IS NOT NULL THEN (FIRST_VALUE(BMI) OVER PARTITION BY PID ORDER BY DATE)) 
  ELSE 0 
END AS FIRSTNOTNULLVALUE_BMI
Run Code Online (Sandbox Code Playgroud)

给了我 0。

id    date         BMI 
1   2000-01-01    NULL
1   2003-05-01    18.1
1   2002-07-15    25.8
2   2009-09-25    NULL
2   2015-04-18    23.5
Run Code Online (Sandbox Code Playgroud)

有什么建议么??

sql sqlite null

4
推荐指数
1
解决办法
7090
查看次数

标签 统计

null ×1

sql ×1

sqlite ×1