daten aus 2 tabellen in einer query

kesnw

Erfahrenes Mitglied
hi,

ich hab 2 Tabelle: A und B mit den Werten: A.id, A.own, A.punkte und B.id, B.name

Ich möchte Alle Datensätze auslesen.

Wie baue ich das in eine Query, ich weiß, das sind Grundlagen aber ich komm einfach nicht drauf...
 
Hallo!

Sind denn die Werte in irgendeiner Form miteinander Verknüpft?
sprich: entspricht die A.id der b.id oder sowas in der Richtung...?

Gruß Tom
 
Code:
SELECT a.id as aid, a.own, a.punkt, b.id as bid, b.name FROM tabelle1 as a, tabelle2 as b
Dabei sage ich a.id as aid und b.id as bid, damit es dort im Ergebnis nachher nicht zu einer Überschneidung kommt. Weiss zwar nicht, ob diese wirklich passieren würde, aber sicher ist sicher.
 
Hallo!

Meinst du vielleicht sowas?

own soll wohl owner sein, oder ?

Code:
mysql> select * from B;
+------+---------+
| id   | name    |
+------+---------+
|    1 | Thomas  |
|    2 | Tim     |
|    3 | Ralf    |
|    4 | Stephan |
+------+---------+
4 rows in set (0.00 sec)

mysql> select * from A;
+------+------+--------+
| id   | own  | punkte |
+------+------+--------+
|    1 |    1 |   5000 |
|    2 |    2 |   3500 |
|    3 |    3 |   6500 |
|    4 |    4 |  11500 |
+------+------+--------+
4 rows in set (0.00 sec)

mysql> SELECT A.id, A.own, A.Punkte, B.Name FROM A,B WHERE A.id = B.id;
+------+------+--------+---------+
| id   | own  | Punkte | Name    |
+------+------+--------+---------+
|    1 |    1 |   5000 | Thomas  |
|    2 |    2 |   3500 | Tim     |
|    3 |    3 |   6500 | Ralf    |
|    4 |    4 |  11500 | Stephan |
+------+------+--------+---------+
4 rows in set (0.01 sec)

Code:
Liefert das Kartesische Produkt der beiden Tabellen, dabei wird jeder Datensatz mit jedem Verknüpft, da keine JOIN Bedingung in der Where - Klausel angegeben wird.

mysql> SELECT a.id, a.own, a.punkte, b.id, b.name FROM a,b;
+------+------+--------+------+---------+
| id   | own  | punkte | id   | name    |
+------+------+--------+------+---------+
|    1 |    1 |   5000 |    1 | Thomas  |
|    2 |    2 |   3500 |    1 | Thomas  |
|    3 |    3 |   6500 |    1 | Thomas  |
|    4 |    4 |  11500 |    1 | Thomas  |
|    1 |    1 |   5000 |    2 | Tim     |
|    2 |    2 |   3500 |    2 | Tim     |
|    3 |    3 |   6500 |    2 | Tim     |
|    4 |    4 |  11500 |    2 | Tim     |
|    1 |    1 |   5000 |    3 | Ralf    |
|    2 |    2 |   3500 |    3 | Ralf    |
|    3 |    3 |   6500 |    3 | Ralf    |
|    4 |    4 |  11500 |    3 | Ralf    |
|    1 |    1 |   5000 |    4 | Stephan |
|    2 |    2 |   3500 |    4 | Stephan |
|    3 |    3 |   6500 |    4 | Stephan |
|    4 |    4 |  11500 |    4 | Stephan |
+------+------+--------+------+---------+
16 rows in set (0.00 sec)

Gruß Tom
 
Zuletzt bearbeitet:
Zurück