sql >> Base de Datos >  >> RDS >> PostgreSQL

Preguntas de subconsulta SQL, ERROR:referencia no válida a la entrada de la cláusula FROM...

Prueba este

SELECT p1.*, (
    SELECT price_cents 
    FROM "prices" p 
    WHERE p1.game_id = p.game_id  
    ORDER BY p.created_at DESC LIMIT 1 OFFSET 1
) as price_cents 
FROM "prices" p1 

ACTUALIZAR según el comentario del autor

Si necesita más de una columna de la segunda entrada reciente, puede intentar seguir el fragmento

SELECT * FROM (
    SELECT p.*, (
        SELECT id 
        FROM "prices" 
        WHERE p.game_id = game_id  
        ORDER BY created_at DESC LIMIT 1 OFFSET 1
    ) AS second_id 
    FROM "prices" p
) p1 INNER JOIN "prices" p2 ON p1.second_id = p2.id