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

Postgresはすべての列を選択しますが、1つの列でグループ化します

    ローカライズされたGROUPBYが必要だと考え始めるときはいつでも、ウィンドウ関数 代わりに。

    私はあなたがこのようなものを求めていると思います:

    select unit_id, time, diag
    from (
        select unit_id, time, diag,
               rank() over (partition by unit_id order by time desc) as rank
        from diagnostics.unit_diag_history
    ) as dt
    where rank = 1
    

    ORDER BYに何かを追加して、一貫して結びつきを断ち切ることもできますが、それでも全体的なテクニックは変わりません。



    1. SlonyスレーブノードでDELETE/UPDATEではなくINSERTのみを複製する方法は?

    2. PDO-テーブルプレフィックスの操作

    3. With 句の使用 SQL Server 2008

    4. R12.2のadopのカットオーバーフェーズで何が起こるか