Veröffentlicht 15. November 201113 j Hallo zusammen, ich habe erneut eine frage: habe 2 tabellen mit gleicher struktur, und möchte anzeigen: - alles aus der ersten ! - aus der zweiten nur wenn datum = '0000-00-00 00:00:00' SELECT name, vorname, nummer ..... FROM person, person1 alles aus person und nur aus der zweiten nur wenn datum = '0000-00-00 00:00:00' mfg . dela
15. November 201113 j SELECT name, vorname, nummer FROM person LEFT JOIN person2 ON {Bedingung} So müsste es in etwa glaube ich gehen.
15. November 201113 j SELECT pers1.*, pers2.* FROM person1 pers1 left outer join person2 pers2 ON pers1.datum = pers2.datum WHERE pers1.datum = pers2.datum
15. November 201113 j Meiner Meinung nach wirste da mit einem JOIN nicht weit kommen. Wenn die Spalten in der Ausgabe für beide Tabellen gleich sind und du alle Datensätze der 1. Tabelle und zusätzlich die Datensätze der 2. Tabelle die deiner Bedingung entsprechen haben willst, sollte dir der UNION Befehl von SQL helfen.
15. November 201113 j Vielen Dank, UNION war genau das richtige! SELECT * FROM person UNION SELECT * FROM person1 WHERE datum = '0000-00-00 00:00:00'
16. November 201113 j Falls du Duplikate in den beiden Abfragen hast ist hier recht wichtig, ob du diese Duplikate angezeigt bekommen möchtest oder nicht. UNION würde dir keine Duplikate liefern, UNION ALL würde dir Duplikate liefern. Jedenfalls für Mssql und Oracle. Ich gehe auch davon aus dass das recht allgemeingültig sein dürfte. Gruß Sven
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.