PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Unindo duas consultas separadas em uma consulta postgresql ... (possível ou não possível)


Certo, então você quer posts escritos por alguém que não seja $user onde nenhuma "instância" (parece significar "resposta") para $user aparece. Deste conjunto você deseja selecionar dez postos distintos.

Se esse for um enquadramento preciso do problema, isso fará o que você deseja:
SELECT *
FROM posts p
WHERE p.user_id <> 3
AND NOT EXISTS (
  SELECT 1
  FROM instances i
  WHERE i.post_id = p.id
  AND i.helped_by_user_id = 3
)
ORDER BY p.id
LIMIT 10;

No geral, parece que o problema aqui é que o problema não é realmente enquadrado com clareza. Normalmente, se você pode dizer em inglês claro o que deseja de um conjunto de dados, é muito fácil traduzi-lo em SQL útil.