Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] wie sql query über alle user einer page_id formulieren (alles in einer Tab

Einklappen

Neue Werbung 2019

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

  • [Erledigt] wie sql query über alle user einer page_id formulieren (alles in einer Tab

    hi all,

    ich habe eine Tabelle in der user und page_ids gelistet sind. user -- page_id bedeutet, dass ein user eine Seite mit der page_id geschrieben oder editiert hat.

    ich würde gern zu jeder page_id alle user aufgelistet bekommen.

    Ich habe schon nach SELF JOINS, GROUP BY und anderen Möglichkeiten gesucht und nichts passendes gefunden.

    Ich kann es natürlich in PHP in zwei Schleifen machen
    schritt 1: SELECT page_id FROM mytable;
    schritt 2: für alle zugegebenen page_ids:
    SELECT user FROM mytable WHERE page_id

    aber dann würde ich unnötig viele queries verursachen.

  • #2
    Bitte Threadtitel ändern.

    Kommentar


    • #3
      LEFT JOIN ist genau das was du suchst.

      Kommentar


      • #4
        Oder du liest alles mit einem Query aus, sortierst nach page_id! Jetzt hast du im Resultset alle gleichen page_ids hintereinander mit den zugehörigen user_ids.

        PHP-Code:
        <?php
        $query 
        = mysql_query("SELECT user_id, page_id FROM mytable ORDER BY page_id");

        $user = array();
        while (
        $row = mysql_fetch_array($query)) {
            
        $user[$row['page_id']][] = $row['user_id'];
        }
        Jetzt hast du ein multidimensionales Array:
        Code:
        Array {
            page_id_1 = Array {
                user_id_1,
                user_id_2,
                user_id_x
            },
            page_id_2 = Array {
                user_id_1,
                user_id_8
            }
        }
        Damit solltest du arbeiten können.

        Kommentar


        • #5
          dankeschön!

          das funktioniert erstmal soweit!

          http://www.php.de/php-einsteiger/483...tml#post374055

          Kommentar


          • #6
            Dann markier den Thread als erledigt.

            Kommentar

            Lädt...
            X