Einzelnen Beitrag anzeigen

Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#1

[SQL] Von mehreren Tabellen selektieren: Reihen fehlen!

  Alt 6. Apr 2008, 20:09
Datenbank: MySQL • Version: 5.0 • Zugriff über: PHPs MySQL Extension
Hi DPler,

ich bin erst seit kurzer Zeit dabei, mir etwas mehr Erfahrung von SQL anzuarbeiten und etwas mehr als nur einfache SELECTs und UPDATEs zu benutzen. Ich bin nun leider auf ein Problemchen gestoßen, bei dem es mir schwer fällt danach zu Google'n oder die Manuals zu durchforsten. Ich habe momentan folgenden Query, der auch weitgehend funktioniert. (Das ist nicht der original-Query, sondern nur das gleiche Prinzip)

SQL-Code:
SELECT
  A.*,
  B.column AS my_column,
  C.foo AS bar
FROM
  table_one AS A,
  table_two AS B
  table_three AS C
WHERE
  B.column = A.another_column AND
  C.foobar = A.example
Das Problem ist nun, dass es seit kurzem keinen Eintrag mehr in table_three gibt, der auf table_one.example passt. Das ist auch richtig so, der Eintrag soll gelöscht sein. Allerdings werden Zeilen aus table_one, bei denen es keinen passenden Eintrag aus table_three gibt nicht mehr zurückgegeben. Das ist nicht so, wie ich es gerne hätte.

Ich hätte gerne auch diese Zeilen. Was jetzt in der per AS als "bar" benannte Spalte steht ist mir eigentlich ziemlich egal. Von mir aus soll ein leerer String drin sein oder NULL. Jedenfalls muss ich die Spalte von anderen unterscheiden können. Normalerweiße müsste ein String, der länger als 1 ist drin stehen. Alles andere kann ich ja dann unterscheiden.

Ich hoffe, ich habe das halbwegs gut erklärt und mir kann jemand helfen. Ich würde mich auch freuen, wenn jemand vielleicht dein ein oder anderen Artikel kennt, bei dem man etwas mehr über SQL lernen kann. (Joins usw.)

Mit freundlichen Grüßen,

Valle
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat