Ich habe ein Problem ein SQL Befehl abzuschicken, der mir folgendes Informationen in einer Zeile zurueckgibt:
transaction.amount Kaeufer.name Verkaeufer.name
Klingt einfach nicht wahr? Ich habe aber noch keine Loesung gefunden dazu. Die "Kaeufer"- und "Verkaeufer"-Daten kommen natuerlich aus der 'customer' Tabelle.
Eine Transaktion kann also wowohl mehrere Kaeufer als auch Verkaeufer haben. Und zusaetzlich auch eine Kontaktperson, die auch in der "customer'-tabelle angelegt worden sind.
Das Problem ist: Wenn ich eine Liste von ca 100 Transaktionen im Web ausgeben moechte, sind das momentan zuviele SQL-Abfragen.
(1 fuer die Customertabelle, 100 fuer die Verkaueferdaten, 100 fuer die Kaeuferdaten, 100 fuer Kontaktpersonen).
Aus diesem Grund moechte ich diese ganzen Daten in einer Abfrage abfragen koennen.
Kann mir da jemand weiterhelfen?
Beispieltabellen habe ich angefuegt:
transaction.amount Kaeufer.name Verkaeufer.name
Klingt einfach nicht wahr? Ich habe aber noch keine Loesung gefunden dazu. Die "Kaeufer"- und "Verkaeufer"-Daten kommen natuerlich aus der 'customer' Tabelle.
Eine Transaktion kann also wowohl mehrere Kaeufer als auch Verkaeufer haben. Und zusaetzlich auch eine Kontaktperson, die auch in der "customer'-tabelle angelegt worden sind.
Das Problem ist: Wenn ich eine Liste von ca 100 Transaktionen im Web ausgeben moechte, sind das momentan zuviele SQL-Abfragen.
(1 fuer die Customertabelle, 100 fuer die Verkaueferdaten, 100 fuer die Kaeuferdaten, 100 fuer Kontaktpersonen).
Aus diesem Grund moechte ich diese ganzen Daten in einer Abfrage abfragen koennen.
Kann mir da jemand weiterhelfen?
Beispieltabellen habe ich angefuegt:
Code:
CREATE TABLE transaction( id INT NOT NULL AUTO_INCREMENT, amount INT, PRIMARY KEY (id) ); CREATE TABLE customer( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(200), PRIMARY KEY (id) ); CREATE TABLE customertransaction( customer_id INT NOT NULL, transaction_id INT NOT NULL, type VARCHAR(50), PRIMARY KEY (customer_id, transaction_id) );
Kommentar