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

SQLサーバーから最初のログインと最後のログアウト時間を取得するには?

    ;WITH LoginCTE AS
    (
        SELECT ID,
               Date,
               MIN(Time) AS MinLogin
        FROM   Table
        WHERE  Type = 'In'
        GROUP BY ID,
                 Date
    ),LogoutCTE AS
    (
        SELECT ID,
               Date,
               MAX(Time) AS MaxLogout
        FROM   Table
        WHERE  Type = 'Out'
        GROUP BY ID,
                 Date
    )
    SELECT T.ID,
           T.Name,
           T.Date,
           MinLogin,
           MaxLogout
    FROM   Table T
           JOIN LoginCTE I
               ON T.ID = I.ID
                  T.Date = I.Date 
           JOIN LogoutCTE O
               ON T.ID = O.ID
                  T.Date = O.Date 
    


    1. jpaのネイティブクエリから引数として複合型を使用して関数を呼び出す

    2. MySQL-まだ存在しない場合は挿入

    3. Linux上のSQLServer2016

    4. リレーショナルデータベース管理システム(RDBMS):MSSQLとMySQL