[MySQL 5.0.18] Syntaxe du "NOT IN" modifiée?

Discussion dans 'Web, design' créé par k o D, 2 Novembre 2006.

Statut de la discussion:
Fermée.
  1. Offline
    SkYlEsS Kawai
    Vaut mieux utiliser les jointures ... mais dans ton cas, je ne sais pas si elles serviraient :roll:

    Ceci dit, tu as trouvé ton bonheur là ? :proud:

    C'est à dire un code qui fonctionne aussi bien en local que sur ton serveur OVH !) :dead:
    SkYlEsS, 3 Novembre 2006
    #41
  2. Offline
    k o D Belge !
    Oui çà fonctionne en local et chez OVH.
    Bah oui par jointure, c'est fort long... le NOT IN est quand même méchamment bien pratique!
    k o D, 3 Novembre 2006
    #42
  3. Offline
    Bingo Beer Addict
    Long à écrire, mais ça doit pas être plus long à exécuter.
    Sur ta première table, tu dois avoir un index sur idMembre (si c'est une clé primaire il y a déjà un index), et un index sur acces.
    Sur ta deuxième table, tu dois avoir un index sur idMembre, et un index de deux colonnes sur idMembre et idLineup.

    D'ailleurs, tout bien réfléchis tu peux faire ça sans UNION :

    SELECT m.idMembre, m.pseudo
    FROM membre AS m LEFT JOIN membreTeam AS mt1
    ON (m.idMembre = mt1.idMembre)
    LEFT JOIN membreTeam AS mt2
    ON (m.idMembre = mt2.idMembre AND mt2.idLineUp='$_POST[idLineUp])
    LEFT JOIN membreTeam AS mt3
    ON (m.idMembre = mt3.idMembre)
    WHERE (m.acces = 1 AND mt1.idMembre IS NULL)
    OR (mt2.idMembre IS NULL AND mt3.idMembre IS NOT NULL);

    Ca marche comme ça ?
    Bingo, 3 Novembre 2006
    #43
  4. Offline
    k o D Belge !
    A 1ère vue oui.
    Maintenant je n'ai pas trop le temps de tester vu que je pars en week-end ce soir mais à 1ère vue çà donne bien le bon résultat.

    Merci beaucoup en tout cas :)
    k o D, 3 Novembre 2006
    #44
  5. Offline
    Bingo Beer Addict
    Y a pas de quoi, ça me change un peu du SQL de mon boulot, ça détend ! :D
    Bingo, 3 Novembre 2006
    #45
Statut de la discussion:
Fermée.