sql >> Database teknologi >  >> RDS >> PostgreSQL

PostgreSQL:Gruppering og derefter filtreringstabel, med betingelse for ikke-eksistens

Brug en CTE, som returnerer alle rækker, hvor A = C og kom til bordet:

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"
 

Se demoen .
Resultater:

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

  1. Hvordan får jeg min, median og max fra min forespørgsel i postgresql?

  2. Sådan får du sidste post i hver gruppe i MySQL

  3. vælg flere rækker forskellig værdi fra samme tabel

  4. Node er 20 gange hurtigere end .NET Core i forbindelse med Postgres