sql >> データベース >  >> RDS >> Sqlserver

2つの行間の時間差を計算する

    WITH    rows AS
            (
            SELECT  *, ROW_NUMBER() OVER (ORDER BY DataDate) AS rn
            FROM    mytable
            )
    SELECT  DATEDIFF(second, mc.DataDate, mp.DataDate)
    FROM    rows mc
    JOIN    rows mp
    ON      mc.rn = mp.rn - 1
    

    SQL Server 2012以降の場合:

    SELECT  DATEDIFF(second, pDataDate, dataDate)
    FROM    (
            SELECT  *,
                    LAG(dataDate) OVER (ORDER BY dataDate) pDataDate
            FROM    rows
            ) q
    WHERE   pDataDate IS NOT NULL
    


    1. PL/SQLプロシージャを使用してOracle10gでテーブルのダンプを取得する

    2. LAST_DAY()がMariaDBでどのように機能するか

    3. SQL Serverデータベースで文字列を検索するにはどうすればよいですか?

    4. OracleのCONCAT()関数