phpbar.de logo

Mailinglisten-Archive

=?iso-8859-1?Q?AW=3A_Limit_nicht_auf_die_Gesamtdatens=E4tze?=

AW: Limit nicht auf die Gesamtdatensätze

Thomas Schneider mysql-de_(at)_lists.bttr.org
Mon, 23 Sep 2002 16:23:05 +0200


Hi,

um diesem Problem zu lösen, würde ich die Query in zwei Querys aufteilen. Zuerst fragst du ab, welche Benutzer du sehen möchtest: 

 $userids = mysql_query(SELECT * FROM benutzer b LIMIT 0,10);

Dann gehst du alles Records durch und startest die Abfrage der Daten: 

 while ($user = mysql_fetch_array($userids)) {
  $data = mysql_query("SELECT * FROM daten WHERE id=".$user['id']);
 }


Diese Methode würde ich verwenden, da man ja nicht wissen kann (?), wieviele Daten zu einem Benutzer gehören. Und ein GROUP BY id funktioniert auch nicht, da dann alle Daten zum Benutzer nur in einem Record angezeigt werden (der Rest fehlt dann).

Hoffentlich hat's genützt ...

Viel Spaß, 
Tom Taylor


-----Ursprüngliche Nachricht-----
Von: Tino Ehrich [mailto:ehrich_(at)_efides.com]
Gesendet: Montag, 23. September 2002 16:05
An: > MySQL
Betreff: Limit nicht auf die Gesamtdatensätze



Servus,

ich habe 2 Tabellen.

1. Tabelle ist die Tabelle mit den Benutzern (ID und CreateDate)
und in der 2. Tabelle sind alle Daten aufgelistet (Id des Benutzers, Id des
Datenfeldes (zum Beispiel 1 für die Anrede etc), Wert). (Insgesamt 8 oder
mehr Einträge pro Benutzer)

Wenn ich nun sage gib mir die mir die ersten 10 Benutzer mit ihren Daten,
dann sieht das so aus:

> SELECT * FROM benutzer b LEFT JOIN daten d USING (id) LIMIT 10

Damit bekomme ich aber nicht die ersten 10 Benutzer, sondern die ersten 10
Reihen, also im allgemeinen nur 1 Benutzer!
Wie kann ich Limit wirklich auf die Benutzer legen?

Mfg
Tino

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive