sql >> Databáze >  >> RDS >> PostgreSQL

SQL:poddotaz má příliš mnoho sloupců

Promítáte tři sloupců ve vašem poddotazu, ale porovnáváte jeden jeden z nich v IN doložka. Vyberte pouze požadovaný sloupec (r1.king ) pro IN v poddotazu:

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. Shrnutí podrobných záznamů MySQL odpovídajících rozsahům IP adres - je vyžadován mySQL Jedi Knight

  2. Top 7 pracovních míst, které vyžadují SQL

  3. Federace uživatelů KeyCloak A DYNAMICKÉ ROLE

  4. Php mysql vytvořit databázi, pokud neexistuje