Jump to content

2 Datums-Spalten Wert errechnen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo Team,

 

sorry, ich bin ein ziemlicher Laie hier und brauche Eure Hilfe.

Ich habe eine Tabelle, nennen wir sie "Aktivitaeten",  mit u.a. einer Spalte Datum (Startdatum) und einer Spalte EnddatumZeit.

Nun würde ich gerne aus diesen beiden Spalten zur Urlaubsermittlung die Differenz und die Summe derer ermitteln.

Und zwar, wenn z.B.:

Datum                                             EnddatumZeit                Wunschermittlung

2013-11-01 12:00:00                      2013-11-01 23:59:00             0,5

2013-12-06 00:00:00                      2013-12-06 12:00:00             0,5

2013-07-01 00:00:00                      2013-07-05 23:59:00             5,0

Summe:                                                                                        6,0

 

Ich gehe davon aus, zur Urlaubsermittlung gibt es eigentlich nur halbe und ganze Tage.

 

Nun noch ein kleiner Wunsch. Die Werte können mehrere Leute in die Tabelle einschreiben und so kann es sein, dass manche Werte doppelt (ähnlich) drin sind und das wäre nicht so toll. Also hier auch eventuell Doppellungen raus.

 

Viel Spaß beim Knobeln.

 

LG

Link zu diesem Kommentar

Hallo Sunny61,

 

danke für Deinen Tipp.

 

Ich habe den Befehl nun erst einmal ähnlich so geschrieben:

 

select  ak.Datum,ak.EndDatumZeit , Datediff (day, ak.Datum, ak.EndDatumZeit) as genommenUrlaubstage, *
from aktivitaeten ak
where (ak.AktivitaetenArt like 'Urlaub' or bezeichnung like '%Urlaub%')
and ak.Datum >= '01.01.13'

 

Auf jedem Fall lief die Abfrage nicht auf Fehler!

Nun war aber bei z.B.:

Datum                                  EnddatumZeit                     Ergebnis (genommenUrlaubstage)     Wunschergebnis                  

2013-08-02 00:00:00           2013-08-02 23:59:00         0                                                         1    

2013-11-01 12:00:00           2013-11-01 23:59:00         0                                                          0,5

 

Dannn fehlt mir leider noch die Endsumme auf das Ergebnis 'genommeneUrlaubstage'

 

 

 

Bis dann und Danke noch einmal!
 

Link zu diesem Kommentar

select  ak.Datum,ak.EndDatumZeit , Datediff (day, ak.Datum, ak.EndDatumZeit) as genommenUrlaubstage, *

from aktivitaeten ak

where (ak.AktivitaetenArt like 'Urlaub' or bezeichnung like '%Urlaub%')

and ak.Datum >= '01.01.13'

Da fehlt noch die Uhrzeit.

 

Auf jedem Fall lief die Abfrage nicht auf Fehler!

Nun war aber bei z.B.:

Datum                                  EnddatumZeit                     Ergebnis (genommenUrlaubstage)     Wunschergebnis                  

2013-08-02 00:00:00           2013-08-02 23:59:00         0                                                         1    

2013-11-01 12:00:00           2013-11-01 23:59:00         0                                                          0,5

 

Dannn fehlt mir leider noch die Endsumme auf das Ergebnis 'genommeneUrlaubstage'

Eins nach dem anderen.

 

Mach doch mal einen Rechtsklick auf die Tabelle > Scripte > Create Table. Das Script hier ins Forum posten, dann kann man sich die Tabelle erstellen.

Link zu diesem Kommentar
  • 3 Wochen später...

ceiling( (cast(@ende AS DECIMAL(10,3)) - cast(@start AS DECIMAL(10,3))) *10/5 ) *5/10



bzw.

 

SELECT    ak.Datum,
        ak.EndDatumZeit,
        ceiling( (cast(ak.EndDatumZeit AS DECIMAL(10,3)) - cast(ak.Datum AS DECIMAL(10,3))) *10/5 ) *5/10 AS genommenUrlaubstage,
        *
FROM    aktivitaeten ak
WHERE ( ak.AktivitaetenArt LIKE 'Urlaub'
OR        bezeichnung LIKE '%Urlaub%' )
AND        ak.Datum >= '2013-01-01 00:00:00.000'

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...