SQL sélectionner dans deux table problème

Résolu

Bonjour;
Voilà j'ai un petit problème j'ai deux tables users et already

users c'est le table avec touts les utilisateurs
et already ont va dire ce le table avec les utilisateur dêjà "abonnee",
maintenant je veux comparer les deux tables, et afficher les utilisateurs en ignorant ceux qui sont dêjà present dans le table already

Ce que je veux

    j'ai essayer 
    LEFT JOIN already a ON a.id_user != users.id OR a.user_id2 != users.id 

    mais sa marche pas ^^

Merci d'avance bonne soirée

Si besoin de plus de détails ou autre.

3 réponses

  1. Contributeur

    bonjour,

    "ça marche pas": message d'erreur?

    peut-être:
     

    select * from users left join already
    on users.id = already.user_id2
    where already.user_id2 is null
    0
    1. Modérateur

      Bonjour,

      Le plus simple je pense 

      SELECT *
      FROM users U
      WHERE U.id NOT IN (
        SELECT A.id_user
        FROM already A 
       )
      AND U.id NOT IN(
        SELECT A2.user_id2
        FROM already A2
       )

      Sinon, avec les jointures, tu dois pouvoir faire un truc du genre 

      SELECT U.*
      FROM users U
      LEFT JOIN already A ON  A.user_id = U.id
      LEFT JOIN already A2 ON A2.user_id2 = U.id
      WHERE A.user_id IS NULL
        AND A2.user_id2 IS NULL

      0
      1. Contributeur

        pourquoi pas

        SELECT U.*
        FROM users U
        LEFT JOIN already A ON  A.user_id = U.id 
            OR A.user_id2 = U.id
        WHERE A.user_id IS NULL
          AND A.user_id2 IS NULL
        0
    2. Merci les gars vraiment.

      0