AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken [SQL] zusätzliche Bedingung für INNER JOIN
Thema durchsuchen
Ansicht
Themen-Optionen

[SQL] zusätzliche Bedingung für INNER JOIN

Ein Thema von Evian · begonnen am 15. Jan 2008 · letzter Beitrag vom 15. Jan 2008
 
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#1

[SQL] zusätzliche Bedingung für INNER JOIN

  Alt 15. Jan 2008, 14:42
Datenbank: MS SQL Server • Version: 2000 • Zugriff über: per ACCESS-Frontend bzw. SQL Server Enterprise Manager
Hallo Zusammen,

ich möchte eine MS SQL-Server-View per INNER JOIN mit einer bestimmten Tabelle zu einer neuen Sicht verknüpfen. ->

http://www.phillsoft.de/Phill/work/abfrage.JPG

Soweit ist das kein Problem. Nun kann es aber in der Tabelle tPersonal_Aenderungen mehrere Datensätze geben, die zu einem bestimmten Mitarbeiter (tPersonal_fest) gehören. Praktisch ist aber immer nur ein Datensätz aktuell bzw. relevant... und zwar jeweils der, bei dem Aenderungsdatum_Beginn < now() und Aenderungsdatum_Ende > now() ist.

Meine Abfrage sieht im Moment wie folgt aus:

SQL-Code:
SELECT TOP 100 PERCENT dbo.sBer_PersPlanUebersicht.PK_tPersonal, dbo.sBer_PersPlanUebersicht.Pk_tPersonal_fest,
                      dbo.sBer_PersPlanUebersicht.Nachname, dbo.sBer_PersPlanUebersicht.Vorname, YEAR(dbo.sBer_PersPlanUebersicht.Datum) AS Jahr,
                      SUM(dbo.sBer_PersPlanUebersicht.Brutto) AS Brutto, SUM(dbo.sBer_PersPlanUebersicht.Urlaubsgeld) AS Urlaubsgeld,
                      SUM(dbo.sBer_PersPlanUebersicht.Weihnachtsgeld) AS Weihnachtsgeld, SUM(dbo.sBer_PersPlanUebersicht.Einmalzahlung) AS Einmalzahlung,
                      SUM(dbo.sBer_PersPlanUebersicht.VWL_AG) AS VWL_AG, SUM(dbo.sBer_PersPlanUebersicht.BAV_AG) AS BAV_AG,
                      SUM(dbo.sBer_PersPlanUebersicht.Brutto + dbo.sBer_PersPlanUebersicht.Urlaubsgeld + dbo.sBer_PersPlanUebersicht.Weihnachtsgeld + dbo.sBer_PersPlanUebersicht.Einmalzahlung
                       + dbo.sBer_PersPlanUebersicht.VWL_AG + dbo.sBer_PersPlanUebersicht.BAV_AG - dbo.sBer_PersPlanUebersicht.BAV_AG - dbo.sBer_PersPlanUebersicht.BAV_AG)
                       AS SVBrutto,
                      SUM(dbo.sBer_PersPlanUebersicht.Brutto + dbo.sBer_PersPlanUebersicht.Urlaubsgeld + dbo.sBer_PersPlanUebersicht.Weihnachtsgeld + dbo.sBer_PersPlanUebersicht.Einmalzahlung
                       + dbo.sBer_PersPlanUebersicht.VWL_AG + dbo.sBer_PersPlanUebersicht.BAV_AG) AS AGBrutto,
                      SUM(dbo.sBer_PersPlanUebersicht.Nettobetrag - dbo.sBer_PersPlanUebersicht.VWL_Sparbetrag - dbo.sBer_PersPlanUebersicht.Pfaendung)
                      AS zbetrag, SUM(dbo.sBer_PersPlanUebersicht.Nettobetrag) AS Nettobetrag, SUM(dbo.sBer_PersPlanUebersicht.AlleAGAnteile) AS AlleAGAnteile,
                      SUM(dbo.sBer_PersPlanUebersicht.Pauschalsteuer) AS Pauschalsteuer, SUM(dbo.sBer_PersPlanUebersicht.Umlageversicherung1)
                      AS Umlageversicherung1, SUM(dbo.sBer_PersPlanUebersicht.Umlageversicherung2) AS Umlageversicherung2, dbo.tPersonal_Aenderungen.Bat,
                      dbo.tPersonal_Aenderungen.Urlaubsanspruch
FROM dbo.sBer_PersPlanUebersicht INNER JOIN
                      dbo.tPersonal_Aenderungen ON dbo.sBer_PersPlanUebersicht.Pk_tPersonal_fest = dbo.tPersonal_Aenderungen.FK_tPersonal_fest
GROUP BY dbo.sBer_PersPlanUebersicht.PK_tPersonal, dbo.sBer_PersPlanUebersicht.Nachname, dbo.sBer_PersPlanUebersicht.Vorname,
                      YEAR(dbo.sBer_PersPlanUebersicht.Datum), dbo.sBer_PersPlanUebersicht.Pk_tPersonal_fest, dbo.tPersonal_Aenderungen.Bat,
                      dbo.tPersonal_Aenderungen.Urlaubsanspruch
ORDER BY dbo.sBer_PersPlanUebersicht.Nachname
Ich schätze ich hätte im Seminar "grundlagen SQL" besser aufpassen sollen, aber leider weiß ich einfach nicht mehr, wie ich dem Join eine zusätzliche Bedingung geben kann. Wie gesagt, es sollen nur die aktuellen Datensätze aus tPersonal_Aenderungen Teil der Abfrage sein. Kann mir jemand einen Tip geben?

vielen Dank,

Phill
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 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 by Thomas Breitkreuz