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

mysqlテーブルの行を列に転置する方法

    SELECT  DATE_FORMAT(PunchDateTime, '%W') DAY,
            MAX(CASE WHEN PunchEvent = 'ClockIn' THEN DATE_FORMAT(PunchDateTime, '%r') END) ClockIn,
            MAX(CASE WHEN PunchEvent = 'BreakOut' THEN DATE_FORMAT(PunchDateTime, '%r') END) BreakOut,
            MAX(CASE WHEN PunchEvent = 'BreakIn' THEN DATE_FORMAT(PunchDateTime, '%r') END) BreakIn,
            MAX(CASE WHEN PunchEvent = 'ClockOut' THEN DATE_FORMAT(PunchDateTime, '%r') END) ClockOut
    FROM    tableName
    WHERE   EmpID = 456
    GROUP   BY DATE_FORMAT(PunchDateTime, '%W')
    ORDER   BY PunchDateTime
    

    出力

    ╔═══════════╦═════════════╦═════════════╦═════════════╦═════════════╗
    ║    DAY    ║   CLOCKIN   ║  BREAKOUT   ║   BREAKIN   ║  CLOCKOUT   ║
    ╠═══════════╬═════════════╬═════════════╬═════════════╬═════════════╣
    ║ Tuesday   ║ 08:36:26 AM ║ 12:01:29 PM ║ 12:28:31 PM ║ 02:28:33 PM ║
    ║ Wednesday ║ 07:38:34 AM ║ 07:38:39 AM ║ 07:38:41 AM ║ 07:38:42 AM ║
    ╚═══════════╩═════════════╩═════════════╩═════════════╩═════════════╝
    



    1. ASP.NETでC#を使用してデータベースからバイナリイメージを取得する方法

    2. Laravel:エラー[PDOException]:PostgreSQLでドライバーが見つかりませんでした

    3. IRI-Windocksテストデータベースリポジトリ

    4. PostgreSQL外部キーが存在しない、継承の問題?