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

SQL Serverで行を列に変換するにはどうすればよいですか?

    単純な集計で行う必要があります:

    select id,
        max(case when flag = 'I' then datetime end) indatetime,
        max(case when flag = 'O' then datetime end) outdatetime
    from t
    group by id;
    

    または、必要に応じて、ピボットを使用できます:

    select id, [I] indatetime, [O] outdatetime
    from t pivot (
        max(datetime) for flag in ([I],[O])
    ) as p
    


    1. SQLクエリ:テーブルから順序付けられた行をフェッチします

    2. MySQLデータベースで非ASCII文字を許可する

    3. MySQL:LIKEの逆バージョンとは何ですか?

    4. Docker postgresは、docker-entrypoint-initdb.dのinitファイルを実行しません