PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Joindre deux requêtes distinctes dans une postgresql ...query... (possible ou non possible)

Bon, donc vous voulez des messages écrits par quelqu'un d'autre que $user où aucune "instance" (semble signifier "répondre") pour $user n'apparaît. À partir de cet ensemble, vous souhaitez sélectionner dix publications distinctes.

Si c'est un cadrage précis du problème, ceci fait ce que vous voulez :

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;

Dans l'ensemble, il semble que le problème ici est que le problème n'est pas vraiment défini clairement. Habituellement, si vous pouvez dire en anglais clair ce que vous voulez d'un ensemble de données, il est alors assez facile de le traduire en SQL utile.