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

Sådan finder du alle produkter med specifikke multiattributværdier

En WHERE-sætning kan kun se på kolonner fra én række ad gangen.

Så hvis du har brug for en betingelse, der gælder for to forskellige rækker fra en tabel, skal du slutte dig til den tabel to gange, så du kan få kolonner fra begge rækker.

SELECT p.*
FROM "products" AS p
INNER JOIN "custom_field_answers" AS a1 ON p."id" = a1."product_id"
INNER JOIN "custom_field_answers" AS a2 ON p."id" = a1."product_id" 
WHERE a1."value" = 'bangle' AND a2."number_value" < 50


  1. Bedste måde at lære PostgreSQL-lagrede procedurer på?

  2. Masseopdatering i postgreSQL ved hjælp af unnest

  3. MySQL-ydelse:JOIN ON vs WHERE

  4. Hvad er Connect Timeout i sql-serverforbindelsesstreng?