国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

SQL查詢獲取每個(gè)狀態(tài)的時(shí)間
P粉605385621
P粉605385621 2024-02-25 21:01:57
0
1
539

給定一個(gè)如下所示的表格

|date      |From       | To                 |
  |01/01/21  |Open       |In progress         |
  |01/03/21  |In progress|In review           | 
  |01/10/21  |In Review  |Done                |
  |01/15/21  |Done       |Resolved            |

有沒有辦法根據(jù)狀態(tài)更改的日期來跟蹤每個(gè)狀態(tài)所花費(fèi)的時(shí)間? 我正在使用的表中只有一個(gè)日期列。

期望的結(jié)果看起來像這樣

|Time spent in phase|Status|
|2                  |Open
|7                  |In review
|5                  |Done

我只有一張表可以使用,那么是否有任何查詢可以很好地解決這個(gè)問題?此工作流程已設(shè)定規(guī)則,因此只有 open 才能進(jìn)入進(jìn)行中。

如果是這樣,是否可以使用這些工作流程狀態(tài)更改來獲取潛在的查詢?

P粉605385621
P粉605385621

全部回復(fù)(1)
P粉505917590

DBFIDDLE

盡管我最后對(duì)你的“問題”發(fā)表了評(píng)論,但我還是創(chuàng)建了一個(gè)小提琴。它有兩個(gè)選項(xiàng):

  • 選項(xiàng)1
SELECT 
    DATEDIFF(COALESCE(LEAD(`Date`) OVER (ORDER BY `Date`),`date`),`Date`) as 'Time spent in phase',
    `From`
FROM ThatLooksLikethis;

輸出:

階段花費(fèi)的時(shí)間 來自
2 打開
7 進(jìn)行中
5 審核中
0 完成
  • 選項(xiàng)2:
SELECT 
    DATEDIFF(`Date`,COALESCE(LAG(`Date`) OVER (ORDER BY `Date`),`date`)) as 'Time spent in phase',
    `From`
FROM ThatLooksLikethis;

輸出:

階段花費(fèi)的時(shí)間 來自
0 打開
2 進(jìn)行中
7 審核中
5 完成

附注這個(gè)答案使用MySQL 8.0函數(shù) LEAD 和 LAG。如果您使用的不是 MySQL 8.0,而是舊版本,那么這個(gè)答案可能沒用......

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板