iT邦幫忙

1

MS SQL問題詢問。目前是用LAG

  • 分享至 

  • xImage

測試資料
大家好,有個SQL問題想要詢問,
測試資料中我有使用LAG去取得上一筆的資料,
但我希望可以增加一個條件,就是我只想要取得Status = 10的資料來做為每行資料的上一筆資料,就像附圖的結果。
再麻煩大家幫個忙,感謝
想要的結果

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
純真的人
iT邦大師 1 級 ‧ 2022-12-07 16:06:54
最佳解答

參考~
https://dbfiddle.uk/F_kXR9sR

Select *
,(
  select top 1 Value
  from t b
  where b.Status = 10
  and a.MonitorId = b.MonitorId
  and a.DateTime > b.DateTime
  order by b.DateTime desc
) LAGValue
From t a
order by a.MonitorId
,a.DateTime

https://ithelp.ithome.com.tw/upload/images/20221207/200613699g4nmfVUNc.jpg

我要發表回答

立即登入回答