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

SQL:underforespørgsel har for mange kolonner

Du projicerer tre kolonner i din underforespørgsel, men sammenligner en enkelt en af dem i IN klausul. Vælg kun den ønskede kolonne (r1.king ) for IN i underforespørgslen:

SELECT kingdom.king, dinasty.birth, dinasty.death FROM kingdom, dinasty WHERE kingdom.king = dinasty.name AND kingdom.king NOT IN ( SELECT DISTINCT R1.king FROM ( SELECT DISTINCT R1.king, D1.birth, D1.death FROM kingdom AS R1, dinasty AS D1, dinasty AS D2 WHERE R1.king=D1.name ) AS R1, ( SELECT DISTINCT R1.king, D1.birth, D1.death FROM kingdom AS R1, dinasty AS D1, dinasty AS D2 WHERE R1.king=D1.name ) AS R2 WHERE R1.death-R1.birth < R2.death-R2.birth );

  1. Mutationsfejl på efter indsættelsesudløser

  2. hvordan man får LAST_INSERT_ID via lagret procedure i php

  3. URL Omskrive forespørgselsdatabase?

  4. Sådan laver du en SUM uden gruppe efter