2017-06-21 7 views
1

Lassen Sie uns sagen, dass ich in der folgenden Tabelle haben:Angezeigt eindeutige Datensätze auf Zeitintervallen

Date    Name    Subject 
----    ----    ------- 
01.03.17 10:03:00 Joseph   English 
01.03.17 11:04:00 Joseph   English 
01.03.17 13:05:00 Joseph   Math 
01.03.17 14:03:00 Carl    French 
02.03.17 09:02:00 Joseph   French 
02.03.17 10:10:00 Carl    French 
03.03.17 09:03:00 Joseph   Biology 
04.03.17 16:03:00 Carl    Biology 
05.03.17 12:03:00 Carl    English 
06.03.17 13:03:00 Joseph   English 
06.03.17 09:02:00 Joseph   English 
06.03.17 10:06:00 Joseph   French 
07.03.17 09:03:00 Joseph   Biology 

Ich möchte eine Abfrage schreiben, wo ich würde:

  • den Monat auswählen (zB März oder von 01.03.17 bis 31.03.17)

  • ein bestimmtes Zeitintervall auswählen (beispielsweise 24 Stunden)

  • zeigen Sie alle eindeutigen Vorkommen in allen Zeitintervallen an, sofern pro Zeitintervall mehr als ein Vorkommen auftritt. Wenn Joseph also zweimal innerhalb von 24 Stunden Englisch hat, würde dies nicht angezeigt, aber wenn er Englisch und Französisch hat, dann würde es die Ergebnisse zeigen.

Die Ergebnisse würden so aussehen:

Date    Name    Subject 
----    ----    ------- 
01.03.17 10:03:00 Joseph   English 
01.03.17 13:05:00 Joseph   Math 
02.03.17 09:02:00 Joseph   French 

01.03.17 11:04:00 Joseph   English 
01.03.17 13:05:00 Joseph   Math 
02.03.17 09:02:00 Joseph   French 

01.03.17 13:05:00 Joseph   Math 
02.03.17 09:02:00 Joseph   French 


04.03.17 16:03:00 Carl    Biology 
05.03.17 12:03:00 Carl    English 


06.03.17 09:02:00 Joseph   English 
06.03.17 10:06:00 Joseph   French 

06.03.17 10:06:00 Joseph   French 
06.03.17 13:03:00 Joseph   English 
07.03.17 09:03:00 Joseph   Biology 

06.03.17 10:06:00 Joseph   French 
07.03.17 09:03:00 Joseph   Biology 

06.03.17 13:03:00 Joseph   English 
07.03.17 09:03:00 Joseph   Biology 

Gibt es eine Möglichkeit diese Schleifen ohne zu tun, um die Zeitintervalle wählen?

Danke!

Antwort

1

prüfen Diese Abfrage

http://sqlfiddle.com/#!9/1baa4/28

Wenn es in Ordnung ist, dann können Sie das Ergebnis Formationslogik in Server-Side-Code verarbeiten.

+0

Danke! Denken Sie, dass es möglich ist, das Ergebnis direkt auf dem SQL zu bilden? Wie zum Beispiel die Gruppierung nach Intervall? – francisaugusto

Verwandte Themen