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

PostgreSQL:存在しない条件を使用して、テーブルをグループ化してからフィルタリングします

    A = Cであるすべての行を返すCTEを使用します テーブルに参加します:

    with cte as (
      select * from tablename
      where "A" = "C"
    )  
    select distinct t."A", t."B", c."D"
    from tablename t left join cte c
    on c."A" = t."A" and c."B" = t."B"
    order by t."A", t."B"
    

    デモ をご覧ください。 。
    結果:

    | A   | B   | D   |
    | --- | --- | --- |
    | x   | 0   | 1   |
    | x   | 1   |     |
    | y   | 0   |     |
    | y   | 1   | 0   |
    


    1. asp.netはセッションRoles.AddUsertoRoleに役割を格納します(私が探しているものではありませんか?)

    2. SQL Server 2014のプロセッサの選択–パート2

    3. mysql、列名を繰り返し処理します

    4. MySQL:好きではない