Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datetime aktuelles Datum, aber Uhrzeit selbst setzen aus Tabelle

Begonnen von MrMojoRisin, August 28, 2017, 11:15:53

⏪ vorheriges - nächstes ⏩

MrMojoRisin

Hallo,

ich habe das Problem, dass ich das aktuelle Datum mit getdate() auslese. So, dann habe ich eine Tabelle mit verschiedenen Zeiten hinterlegt. Diese sind vom Datentyp time.

Jetzt such ich mir den passenden Datensatz raus. Dort hab ich einer Spalte den Beginn und in einer zweiten das Ende.

Jetzt müsste ich wissen, liegen wir gerade vor oder nach der Zeit Beginn und Ende.

Ganz einfach mal am Beispiel:

Jetzt ist sagen wir ich lese mit getdate() folgendes aus:

28.08.2017 08:43

In meiner Tabelle steht eine Anfangszeit von 9:30 und eine Endzeit von 10:00.

Ich muss jetzt wissen, lieg ich vor 9:30, nach 10. Das reicht mir.

Ich kann das jetzt schon zusammenbasteln mit einer längeren Abfrage, aber gibts da nicht was einfaches.

Prinzpiell hätte ich das so gelöst, aber es ist halt so lange :)

DATEADD(MINUTE,(SELECT DATEPART(MINUTE,LM_PZ_Pausenbeginn) FROM tbl_Pausenzeiten WHERE LM_PZ_StationID = 1 AND LM_PZ_SchichtID = 1),(DATEADD(HOUR,(SELECT DATEPART(HOUR,LM_PZ_Pausenbeginn) FROM tbl_Pausenzeiten WHERE LM_PZ_StationID = 1 AND LM_PZ_SchichtID = 1), CONVERT(DATETIME, CONVERT(CHAR(10), getdate(), 104)))))

Dank euch schon mal

Beaker s.a.

Ohne zu wissen, was weiter passieren soll
If getdate()-int(getdate()) < Anfang Then
    'Angangszeit noch nicht erreicht
ElseIf getdate()-int(getdate()) > Ende Then
    'Endzeit überschritten
Else
    'im Zeitplan
End If
aus aktuellen Anlässen:
Das Hauptproblem - eines der Hauptprobleme, denn es gibt mehrere - eines der vielen Hauptprobleme beim Regieren von Leuten ist, von wem man sich das gefallen läßt; oder vielmehr, wer es schafft, die Leute soweit zu kriegen, dass sie sich's gefallen lassen.
Zusammenfassend: Es ist eine allseits bekannte Tatsache, dass die Leute, die sich am meisten wünschen, Leute zu regieren, gerade deshalb diejenigen sind, die am wenigsten dazu geeignet sind. Um die Zusammenfassung zusammenzufassen: Jeder, der imstande ist, sich zum Präsidenten wählen zu lassen, sollte um alles in der Welt daran gehindert werden, dass er seinen Job ausübt. Um die zusammengefasste Zusammenfassung zusammenzufassen: Leute sind ein Problem.
(Douglas Adams)

PhilS

Auf die Schnelle mal folgender Vorschlag:
SELECT
CASE WHEN convert(time,getdate()) < LM_PZ_Pausenbeginn
THEN 'Vor Pausenbegin'
ELSE 'Nach Pausenbegin'
END
FROM tbl_Pausenzeiten
WHERE ...
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor