Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SQL Zeit Between BeginnDate und EndDate

Empfohlene Antworten

Veröffentlicht

Ich habe eine Datenbank mit BeginnDate und EndDate.

Nun möchte ich von einem bestimmten Tag alle Daten, jede Stunde herausfiltern.

wenn BeginnDate und Enddate über mehrere Stunden gehen, dann werden die

Daten mehrfach ausgelesen.

Und ich habe mir das so gedacht, dass ich sage, wenn "between BeginnDate and EndDate"

< Unixtimestamp dann...

Leider verstehe ich das nicht oder stehe ich auf dem Schlauch. Muss ich dann sowas machen wie

Select * from Table

where BeginDate between BeginnDate and EndDate < 1417132800

and EndDate between BeginnDate and EndDate < 1417132800

Würde mir bitte jemand von euch auf die Sprünge helfen?

Hallo julia4!

Ich verstehe ehrlich gesagt nicht so ganz, was du machen willst.

[table=width: 500, class: grid, align: left]

[tr]

[td]ID[/td]

[td]Wert[/td]

[td]DateBegin[/td]

[td]DateEnd[/td]

[/tr]

[tr]

[td]1[/td]

[td]Hallo[/td]

[td]01.02.2015[/td]

[td]05.02.2015[/td]

[/tr]

[tr]

[td]2[/td]

[td]Welt[/td]

[td]02.02.2015[/td]

[td]06.02.2015[/td]

[/tr]

[tr]

[td]3[/td]

[td]foo[/td]

[td]03.02.2015[/td]

[td]07.02.2015[/td]

[/tr]

[tr]

[td]...[/td]

[td]...[/td]

[td]...[/td]

[td]...[/td]

[/tr]

[/table]

Und mit deiner Abfrage willst du jetzt

"Gib mir alle Datensätze, für die zutrifft, dass @EingabeDatum zwischen [DateBegin] und [DateEnd] liegt."

bezwecken?

Wie viele Datensätze schreibst du denn da rein? Bzw. in welchem Intervall.

Treffe ich mit der Vermutung deine Intention oder geht das völlig an deiner Anforderung vorbei?

Gruß, Goulasz

  • Autor

Doch du triffst es schon.

Also ich will aus einer Bestehenden DB eine Statistik erzeugen.

Dort sollen Anrufe gezählt werden. Und das für jede Stunde des Tages.

Und dann will ich wissen wieviele Anrufe in dieser Stunde stattgefunden haben.

Wenn sich dieser anruf über mehrere Stunden erstecken sollte, dann soll er sowohl

in der einen Stunde als auch in der anderen gezählt werden.

Also will ich die DB fragen: Gib mir alle Datensätze deren Zeitstempel zwischen Beginn und Ende

< timestamp ist.

Ich kann leider nicht sagen, gib mir nur den BeginDate, denn es könnte sein, dass ein Anruf theoretisch

über mehrere Stunden geht. Deshalb brauche ich auch die zwischenräume.

Ich hoffe ich konnte mich einigermaßen verständlich ausdrücken.

  • Autor
... where 1417132800 between BeginnDate and EndDate

Wenn die Typen direkt vergleichbar sind.

Ja den Ansatz verstehe ich, aber ich will ja wissen, ob ein Zeitraum (bei mir eine Stunde) sich zwischen BeginnDate und

EndDate befindet.

Also nehmen wir an zwischen 00:01 Uhr und 01:00 kamen 20 Anrufe rein. Dann -frage an die Tabelle1- gib mir die aus die zwischen

BeginnDate und EndDate angerufen haben.

Also nehmen wir an zwischen 00:01 Uhr und 01:00 kamen 20 Anrufe rein. Dann -frage an die Tabelle1- gib mir die aus die zwischen

BeginnDate und EndDate angerufen haben.

Und welche Anrufe soll die Abfrage jetzt liefern?

- Die, die vor 00:01 angefangen und nach 1:00 aufgehört haben

- Die, die nach 00:01 angefangen und nach 1:00 aufgehört haben

- Die, die vor 00:01 angefangen und vor 1:00 aufgehört haben

- Die, die nach 00:01 angefangen und vor 1:00 aufgehört haben

- Die, die zwischen 00:01 und 1:00 angefangen haben

- Die, die zwischen 00:01 und 1:00 aufgehört haben

- Die, die zwischen 00:01 und 1:00 angefangen oder aufgehört haben und mindestens 1 Stunde gedauert haben

  • Autor
Ich vermute folgendes:

Du möchtest die Datensätze, die

zwischen 00:01 und 01:00 angefangen

ODER

zwischen 00:01 und 01:00 aufgehört

ODER

vor 00:01 angefangen UND nach 01:00 aufgehört haben

Ja genau!

  • Autor

Denke nicht dass das funktioniert. Weil ich spätestens im nächsten zeitstempel bei t1 und t2 dann auch alle

BeginnDate drin hab die in t0 sind. Ausserdem kann das EndDate doch auch in t0 liegen

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.