hilfe bei einem komplexen join

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • hilfe bei einem komplexen join

    hallo,

    folgendes "problem" ich will ein entwickeltes forum um ein paar funktionen erweitern. dazu würde ich gerne aus den folgenden tabelle eine abfrage machen.

    groups (groupid , groupname)
    usergroups(groupid, userid )
    forums(forumid , forumname, view )
    forumgroups ( forumid , groupid, view)

    so in der tabelle forums das feld view kann z.b. eine 3 haben.

    jetzt will ich:

    alle forumnamen wo das recht eines users 3 oder größer ist ODER die forum id in der tabelle usergroups ist und in der tabelle forumgroups das feld view auf 1 steht.

    das problem daran ist das ein user ja in mehreren gruppen sein will und ich möchte natürlich die gruppe wo das auf view steht für dieses abgefragte forum.

    gibt es da irgendeine lösung für mein problem?
    meine Seite mit vielen guten PHP Scripten :

    http://www.ilch.de

  • #2
    du gibst unvollständige Information an und möchtest geholfen werden? z.B.:
    - das recht eines users 3 oder größer ist -> wo ist das angegeben, in welcher Tabelle?
    - die forum id in der tabelle usergroups -> hast du auch nicht angegeben!

    Außerdem wie sieht denn dein Versuch bisher aus?

    Kommentar


    • #3
      naja ja usergroups is ja die tabelle wo nur userid und usergroup gespeichert werden nur um zu wissen welcher user in welcher gruppe ist.

      Code:
      select distinct
      a.name as forumname,
      a.id as forumid,
      a.view as forumview,
      b.view as groupview,
      c.uid as userid
      from forums a
      LEFT JOIN forumgroups b ON a.id = b.fid
      LEFT JOIN usergroups c ON b.gid = c.gid AND c.uid = {$uid}
      WHERE a.view = {$view}
      OR ( b.view = 1 )
      und verdamt es funktioniert... :P ich sag mal sorry aber irgendwie war ich mal wieder verplant.

      Oder gibts an der abfrage etwas auszsetzten? könnte die falsch sein?
      meine Seite mit vielen guten PHP Scripten :

      http://www.ilch.de

      Kommentar


      • #4
        ja, und zwar die "as" bitte weglassen. Außerdem kann man nicht viel dazu sagen, denn deine Tabellenangaben hat genau genommen nichts mit der Abfrage zu tun. Es mag ja sein, dass man a.id zu forums.forumid oder b.fid zu forumsgroups.forumid in etwa zuordnen kann, aber wenn du geholfen werden möchtest, bitt zukünfig auch vernüftige Angabe machen.

        Kommentar


        • #5
          ok ich werde mich in zukunft bemühen
          warum die as weglassen?
          meine Seite mit vielen guten PHP Scripten :

          http://www.ilch.de

          Kommentar


          • #6
            Original geschrieben von ilch

            warum die as weglassen?
            damit es ANSI-kompatibel wird

            Kommentar


            • #7
              wo kann ich denn etwas über "ANSI" lesen oder könntest du das in ein paar worten um/beschreiben
              meine Seite mit vielen guten PHP Scripten :

              http://www.ilch.de

              Kommentar

              Lädt...
              X