![]() |
Datenbank: ms sql • Version: 2000 • Zugriff über: ADO
SQL Abfrage
Ich steh grad auf dem Schlauch :gruebel:
Ich habe zwei Tabellen tbl_Mitarbeiter --------------- Mitarbeiternr Name und tbl_Ausgabe ----------- Ausgabenr Ausgeber -> tbl_Mitarbeiter.Mitarbeiternr STPAusgabe -> tbl_Mitarbeiter.Mitarbeiternr Ich wollte nun alle Ausgabenr(n) inkl. den Name(n) der Ausgeber und STPAusgabe selektieren. Gibt es da nicht eine einfache Abfrage? |
Re: SQL Abfrage
select * from tbl_Ausgabe A
left join tbl_Mitarbeiter MAusgabe ON A.Ausgeber = MAusgabe.MitarbeiterNr left join tbl_Mitarbeiter MSTPAusgabe ON A.STPAusgabe = MSTPAusgabe.MitarbeiterNr |
Re: SQL Abfrage
:spin2:
Ich frage mich, warum man zig jahre Informatik studiert :wall: Ich danke Dir! |
Re: SQL Abfrage
Zitat:
|
Re: SQL Abfrage
Zitat:
SQL-Code:
Das sollte schneller sein.
select * from tbl_Ausgabe A
left join tbl_Mitarbeiter m ON A.Ausgeber = m.MitarbeiterNr and A.STPAusgabe = m.MitarbeiterNr |
Re: SQL Abfrage
Hi,
@Jelly Das ist aber nicht das Gleiche. Deine Abfrage liefert nur die Zeilen, bei denen beide Felder auf den selben Mitarbeiter zeigen. Die andere Abfrage hingegen bringt alletbl_Ausgabe-Zeilen mit den jeweiligen Mitarbeitern. |
Re: SQL Abfrage
Stimmt, ich hatte die Frage nur halbherzig gelesen.
|
Re: SQL Abfrage
So müsste es auch mit einem JOIN gehen:
SQL-Code:
Es werden also alle Mitarbeiter berücksichtigt, die sowohl in A.Ausgeber als auch in A.STPAusgabe vorhanden sind...
SELECT * FROM tbl_Ausgabe A
JOIN tbl_Mitarbeiter m ON (A.Ausgeber = m.MitarbeiterNr OR A.STPAusgabe = m.MitarbeiterNr) |
Re: SQL Abfrage
Zitat:
|
Re: SQL Abfrage
Zitat:
oder geh ich da irrig in der Annahme (immer diese sprachlischen Feinheiten...):gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz