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