phpbar.de logo

Mailinglisten-Archive

SQL-Syntax
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SQL-Syntax



Hallo,

bei einer Abfrage über zwei (drei?) Tabellen komme ich mit der SQL-Syntax
nicht hin. So sehen die beiden Tabellen aus:

TABLE1:
id	f1	f2
--------------
1	1	5
1	2	4
1	3	7
1	4	2
2	1	1
2	2	9
2	3	1
2	4	8

TABLE2:
---------
id	f3
1	123
2	344
3	566
4	433

In TABLE1 ist (id,f1) der primary key in TABLE2 (id)
Das Ergebnis der Abfrage soll so aussehen:

ABFRAGE:
--------
id	f1	f2	f3
1	1	4	123
2	2	9	344
1	3	7	123
2	4	8	344

Sprachlich könnte das so sein: "Suche für jeden Wert in TABLE1.F1 das
maximale TABLE1.F2, gib mir den ID und hänge TABLE2.F3 dran.

Die Felder TABLE1.F1 und TABLE2.F2 bekommt man so:
select f1,max(f2) from table1 group by f1

Das anhängen des ID ist aber nicht so ganz einfach, logischerweise liefert
"select id,f1,max(f2) from table1 group by f1" das falsche Ergebnis. In
dieser Konstellation:

ABFRAGE:
---------
id	f1	f2
1	1	4
1	2	9
1	3	7
1	4	8

Wahrscheinlich muß man hier geschickt einen SELF-JOIN einsetzen, aber wegen
des "group by" bin ich noch zu keinem brauchbaren Ergebnis gekommen.

Mfg. Sven Letzel

---
*** Abmelden von dieser Mailingliste funktioniert per E-Mail
*** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive