SQL 3 Bedingungen
Moin Moin,
ich habe mal eine Frage...
Ich habe 1 Tabelle mit folgenden Daten
[Coming Clocking] Kommen Zeit
[Leaving Clocking] Gehen Zeit
[Break Clocking] Pause
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
00:00 00:00 08:25
00:00 00:00 00:00
346 07:07 14:32 00:00
00:00 00:00 00:00
377 06:30 15:51 00:00
Jetzt will ich die Datensätze, in der alle 3 Werte 00:00 sind rausfiltern. Mein Ergebnis sollte so aussehen:
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
00:00 00:00 08:25
346 07:07 14:32 00:00
377 06:30 15:51 00:00
SELECT* FROM.....
WHERE
(CONVERT(CHAR(5),[Coming Clocking], 108) <> '00:00' AND CONVERT(CHAR(5),[Leaving Clocking],108) <> '00:00' AND CONVERT(CHAR(5),[Break Clocking],108)<> '00:00')
ich dachte, mit einem einfachen AND Operator komme ich da weiter, aber dann sehen meine Ergebnisse so aus:
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
346 07:07 14:32 00:00
377 06:30 15:51 00:00
Kann mir jemand helfen? :D
ich habe mal eine Frage...
Ich habe 1 Tabelle mit folgenden Daten
[Coming Clocking] Kommen Zeit
[Leaving Clocking] Gehen Zeit
[Break Clocking] Pause
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
00:00 00:00 08:25
00:00 00:00 00:00
346 07:07 14:32 00:00
00:00 00:00 00:00
377 06:30 15:51 00:00
Jetzt will ich die Datensätze, in der alle 3 Werte 00:00 sind rausfiltern. Mein Ergebnis sollte so aussehen:
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
00:00 00:00 08:25
346 07:07 14:32 00:00
377 06:30 15:51 00:00
SELECT* FROM.....
WHERE
(CONVERT(CHAR(5),[Coming Clocking], 108) <> '00:00' AND CONVERT(CHAR(5),[Leaving Clocking],108) <> '00:00' AND CONVERT(CHAR(5),[Break Clocking],108)<> '00:00')
ich dachte, mit einem einfachen AND Operator komme ich da weiter, aber dann sehen meine Ergebnisse so aus:
Mitarbeiter Nr. | Kommen Zeit | Gehen Zeit | Pause
368 06:07 15:17 08:20
346 07:07 14:32 00:00
377 06:30 15:51 00:00
Kann mir jemand helfen? :D
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 432709
Url: https://administrator.de/contentid/432709
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
5 Kommentare
Neuester Kommentar
1. ja, das macht einen Unterschied. Mit richtigen Datentypen kann man dann auch richtig arbeiten
2. ja, und? Ist das die Pausen-Dauer oder der Pausen-Start? wie lang ist die Pause?
3. dann hoffen wir mal, daß ihr in der Zukunft nicht wachsen werdet, und es kein 24-Stunden-Betrieb geben wird. Denn dann fliegt Euch das um die Ohren.
2. ja, und? Ist das die Pausen-Dauer oder der Pausen-Start? wie lang ist die Pause?
3. dann hoffen wir mal, daß ihr in der Zukunft nicht wachsen werdet, und es kein 24-Stunden-Betrieb geben wird. Denn dann fliegt Euch das um die Ohren.
test=*# select * from c64 ;
ma | coming | leaving | break
-----+---------------------+---------------------+----------
368 | 2019-03-26 06:07:00 | 2019-03-26 15:17:00 | 08:20:00
368 | | | 08:20:00
368 | | |
(3 rows)
test=*# select *, leaving-coming-break as time from c64 where not (coming is null and leaving is null and break is null);
ma | coming | leaving | break | time
-----+---------------------+---------------------+----------+----------
368 | 2019-03-26 06:07:00 | 2019-03-26 15:17:00 | 08:20:00 | 00:50:00
368 | | | 08:20:00 |
(2 rows)