Ankündigung

Einklappen
Keine Ankündigung bisher.

Array: Daten nur eimalig einsetzen

Einklappen

Neue Werbung 2019

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

  • Array: Daten nur eimalig einsetzen

    Hallo! Ich bin wohl irgendwie auch nach Wochen nicht in der Lage, eine Lösung zu finden, obwohl ich bestimmt alle relevanten Befehle kenne...

    Situation:
    Eine MySQL-Tabelle (wer besucht meine Seite mit IP-WhoIs) besitzt Einträge wie "Land" und "Datum" (time(now)). In dieser Tabelle kann ein Land auch mehrfach vorkommen, der Timestamp ist immer einmalig.

    Zielsetzung:
    Für meine Statistik-Seite will ich anzeigen, wieviele Besucher aus welchen Ländern (prozentual) meine Seite besuchten, und in anderen Statistiken wieviele Besucher pro Woche etc. Das Letztere ist einfach.

    Problem:
    Irgendwie fällt mir kein Lösungsansatz ein, wie ich die Ländernamen aus der Tabelle nur EINMALIG auslese, aber gleichzeitig zu jedem Land die Besucheranzahlen aufnehmen kann (Beispiel: 8x England). Ich kann mit doppelten Arrays nicht umgehen, wenn dies der Weg sein sollte... HILFE!

    Danke für Eure Zeit und Hilfe,

    Sven
    sigpic
    Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
    Sven


  • #2
    Ich hoffe ich verstehe dich richtig. Du hast eine Tabelle mit den Land für statistische Zwecke und möchtes nun wissen wie oft ein Land vorkommt?

    Dann versuch es doch über ein SQL Statement:
    Code:
    SELECT count(land) FROM statistik_table WHERE land="Deutschland"
    ist auf die Art u. Weise nur halt umständlich weil du das für jedes Land machen musst aber evl. hilft dort ein
    Code:
    SELECT DISTINCT land FROM statistik_table
    Damit bekommst alle Länder aus der Tabelle womit du dann jeweils die obige SQL aufrufen kannst.

    Vielleicht kann man die beiden SQL's auch kombinieren zu einer da bin ich mir nur leider grad nicht sicher.
    Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält.

    Kommentar


    • #3
      Um sowohl den Namen des Land als auch die Anzahl der Besucher aus diesem Land zu ermitteln musst du GROUP BY verwenden:
      Code:
      SELECT
          COUNT(*) AS anzahl,
          land
      FROM
          tabelle
      GROUP BY
          land
      ORDER BY
          anzahl

      Kommentar


      • #4
        Da kriegt er doch alle Einträge aber er will doch alle Einträge wo zb. land=Deutschland ist. Ich glaub da hilft dein SQL nicht ...
        Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält.

        Kommentar


        • #5
          Ich hatte die Frage so verstanden, dass er die Anzahl der Besucher zu jedem Land haben will. Ansonsten wäre deine Abfrage das, was er gesucht hat.

          Kommentar


          • #6
            Hallo,

            vielen Dank für Eure Hilfe. Alle Beiträge haben mir sehr geholfen. Xabbuh und HStev, beide Varianten haben mir letztendlich geholfen. Dieses Thema kann hiermit abgeschlossen werden (weiß aber nicht, wie ich dies mache).

            Sven
            sigpic
            Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
            Sven

            Kommentar

            Lädt...
            X