JOIN *ugh*

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

  • JOIN *ugh*

    Hmm .. naja also :
    Ich versuche folgenden JOIN zu bauen, komme aber net so richtig weiter :

    Table 1
    gallery_table
    ----------------------------------------------------------
    | id | galeriename | gallery_perm
    ----------------------------------------------------------
    | 1 | blabla | 1 |
    - - - - - - - - - - - - - - -
    | 2 | blablubb | 1 |
    - - - - - - - - - - - - - - -
    | 3 | blablablub | 0 |


    Table 2
    pictures_table
    ----------------------------------------------------------
    | id | gid | picname |...
    ----------------------------------------------------------
    | 1 | 2 | blabla.gif |
    - - - - - - - - - - - - - - - - - - - -
    | 2 | 1 |blubb.gif |
    - - - - - - - - - - - - - - - - - - - -
    | 3 | 3 |blubbi.gif |....

    gid == gallery_id ^^

    Nun will ich alle Bild-IDs aus der pictures_table auslesen, wo bei der dazugehörigen galerie gallery_perm auf 1 steht.

    hmm...hab mir mal nen paar JOINS angeschaut, aber irgendwie bin ich da net so durchgestiegen.

    paddy

  • #2
    Re: JOIN *ugh*

    Original geschrieben von paddy
    hab mir mal nen paar JOINS angeschaut, aber irgendwie bin ich da net so durchgestiegen.
    du sollst dir keine joins anschauen, sondern selbst basteln

    was hast du denn probiert?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Re: Re: JOIN *ugh*

      Original geschrieben von mrhappiness
      du sollst dir keine joins anschauen, sondern selbst basteln

      was hast du denn probiert?

      Tschuldige - ich versuche die Sache zu verstehen, nicht zu basteln .
      Schau mir gerade dein Sticky Posting an - ich glaub ich schaffs allein, aber wenn du mir nen Tipp geben kannst...

      Kommentar


      • #4
        Re: Re: Re: JOIN *ugh*

        Original geschrieben von paddy
        aber wenn du mir nen Tipp geben kannst...
        schau dir das sticky an

        du schaffst das schon
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          hmm .. vielleicht kannst du doch nen bissl helfen

          Code:
          $rand_pic_query  = "SELECT id FROM table_gallery_pics INNER JOIN table_gallery ON ";
          $rand_pic_query .= "table_gallery.id = table_gallery_pics.pic_gal_id WHERE ";
          $rand_pic_query .= "table_gallery.gallery_perm = 1 ORDER BY rand() LIMIT 1";
          hmm.. kommt folgender sql_error :
          Column: 'id' in field list is ambiguous
          Also - ich will praktisch ein Zufallsbild (table_gallery_pics.id) aus einer nicht gesperrten Galerie(table_gallery.gallery_perm) auslesen.
          Zuletzt geändert von ; 31.01.2004, 15:35.

          Kommentar


          • #6
            hmm,

            die hab ich beim ersten mal auch im wörterbuch nachgeschaut, heut weiß ich was ambiguous heißt

            EDIT:

            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              Original geschrieben von derHund
              hmm,

              die hab ich beim ersten mal auch im wörterbuch nachgeschaut, heut weiß ich was ambiguous heißt

              EDIT:

              ambiguous == vieldeutig ?!?

              Hmm...bloß was ist an meiner query jetzt falsch ?

              Kommentar


              • #8
                SELECT tgp.id
                FROM table_gallery_pics tgp
                INNER JOIN table_gallery ON tgp.table_gallery.id = tgp.pic_gal_id
                WHERE tgp.gallery_perm = 1
                ORDER BY rand()
                LIMIT 1


                wen so in der art, aber der join macht nicht sinn wenn du nur eine tabelle behandelst.


                und schau dir mal "aliase" an
                thx Mukraker

                Kommentar


                • #9
                  got milk?

                  die spalten müssen eindeutig ansprechbar sein, bei zwei oder mehr gleichlautenden spaltennamen muß der tabellenname angegeben werden, sollte man bei mehr als einer tab sowieso machen ...
                  Die Zeit hat ihre Kinder längst gefressen

                  Kommentar


                  • #10
                    Original geschrieben von derHund
                    [...], heut weiß ich was ambiguous heißt
                    und für die, die zu faul zum selbernachschlagen sind...

                    http://dict.leo.org/?search=ambiguou...elaxed&lang=de
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      Original geschrieben von mukraker
                      SELECT tgp.id
                      FROM table_gallery_pics tgp
                      INNER JOIN table_gallery ON [COLOR=red]tgp.[/COLOR] table_gallery.id = tgp.pic_gal_id
                      WHERE [COLOR=red]tgp.[/COLOR] [COLOR=green]table_gallery.[/COLOR] gallery_perm = 1
                      ORDER BY rand()
                      LIMIT 1


                      wen so in der art, aber der join macht nicht sinn wenn du nur eine tabelle behandelst.


                      und schau dir mal "aliase" an
                      Okay - ich habs ein wenig abgeändert - jetzt funzt deine Query.
                      Danköööööö

                      ROT == gelöscht
                      GRÜN == HINZUGEFÜGT
                      so funktioniert es jetzt

                      Kommentar

                      Lädt...
                      X