【发布时间】:2023-02-18 16:14:41
【问题描述】:
我正在尝试使用 CASE 表达式,如下所示:
LEFT OUTER JOIN table_1 AS T1
ON T2.common_id = T1.common_id
CASE WHEN T1.column_1 IS NOT NULL
THEN T1.column_1
WHEN T1.column_1 IS NULL
THEN get first value from T1.column that is not null by date
ELSE 0
END
它是第 6 行的逻辑,我已经写出了我想要的东西,但我不太正确。
THEN get first value from T1.column that is not null by date
我一直在查看 FIRST_VALUE 函数,但无法完全正确地理解它。但也许还有其他方法可以让它发挥作用。
【问题讨论】:
-
我会说你在
FIRST_VALUE的正确轨道上。如果您可以在帖子中添加包含示例数据和预期输出的表格,我们可以更好地为您提供帮助。 -
在寻求 SQL 帮助时,minimal reproducible example 是一个很好的开始。
-
您使用的是 MySQL 还是 Postgresql? (删除不相关的标签。)
-
那是一个
case表达,不是声明。 -
First_Value 是一个窗口函数,我无法从您的代码片段中看出您的意图,请添加一些合适的示例数据等并更正您的矛盾 RDBMS 标签