簡體   English   中英

SQL 滯后函數和 where 子句

[英]SQL Lag function and where clause

我是 SQL 新手,我想編寫一個查詢,其中我們將行保留在同一項目的位置:

  • column1_value 為 NULL AND
  • 前一個非空 column1_value 是 'end' OR
  • 前一個 column1_value 為 NULL

其他一切都被拋棄了。

我知道我必須使用 LAG 功能,但無法進行最終查詢。 你能幫我嗎?

提前致謝

如果我理解正確:

select t.*
from (select t.*,
             lag(column1) over (order by ordercol) as prev_column1
      from t
     ) t
where column1 is null and 
      (prev_column1 = 'end' or prev_column1 is null)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM