Prüfung auf aktuellen Tag in MySQL Statement

FenchelT

Neuer Benutzer
Beiträge
1
Hallo,

ich benötige mal Eure Hilfe.

Jeden Tag führe ich ein Statement aus, welches mir eine csv Datei mit den gewünschten Daten exportiert.
Das funktioniert auch soweit ganz gut auf folgende Weise:

Code:
(SELECT 'Datum und Uhrzeit','Erfasst von','Bestätigt','Kommentar')
UNION
(SELECT ACTUAL_TACTIVATIONTIMECODE, ACTUAL_CGROUP, IFNULL(ACTUAL_TACKNOWLEDGETIMECODE, 'nicht Bestätigt'), IF(ACTUAL_CWORKSHEET IS NULL or ACTUAL_CWORKSHEET = '', 'kein Kommentar eingetragen', ACTUAL_CWORKSHEET) as ACTUAL_CWORKSHEET
FROM
    ccs.table_actual
WHERE
    (ACTUAL_CLOCATION = 'Fahrzeug' AND ACTUAL_TACTIVATIONTIMECODE >= CURDATE()-1 AND TIME(ACTUAL_TACTIVATIONTIMECODE) BETWEEN '22:15' AND '23:59')
OR
    (ACTUAL_CLOCATION = 'Fahrzeug' AND ACTUAL_TACTIVATIONTIMECODE >= CURDATE() and TIME(ACTUAL_TACTIVATIONTIMECODE) BETWEEN '00:00' AND '05:20')
INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/Export.csv' 
FIELDS ENCLOSED BY '"'
TERMINATED BY ';'
ESCAPED BY '"'
LINES TERMINATED BY '\r\n');

Dies soll allerdings nur Montag bis Freitag passieren, an Samstagen und Sonntagen garnicht und Montags sollte es folgendermaßen ausgeführt werden:

Code:
WHERE
    (ACTUAL_CLOCATION = 'Fahrzeug' AND ACTUAL_TACTIVATIONTIMECODE >= CURDATE()-3 AND TIME(ACTUAL_TACTIVATIONTIMECODE) BETWEEN '22:15' AND '23:59')

Alle meine Versuche mit Dayofweek(now) = xy sind bisher gescheitert, da ich nicht weiss, wo diese Abfrage auf den aktuellen Tag richtigerweise eingetragen wird.

Vielleicht kann mir da jemand auf die Sprünge helfen oder eine Alternative aufzeigen zu diesem Code.

Vielen Dank!

Beste Grüße
 
Werbung:
Werbung:
Die Zeitplanung wann es ausgeführt wird würde ich mit der Aufgabenplanung umsetzen (oder wer auch immer das Script aufruft).

Deine geänderte WHERE-Bedingung ist recht einfach zu lösen. Ich schreib das mal in Pseudo Code, die Funktionen heißen bei MySQL vermutlich anders:
Code:
WHERE ( normale_Bedingung(en) ) OR ( dayofweek(getdate()) = 1 AND geaenderte_Bedingung )
 
Zurück
Oben