2016-01-05 3 views
0

Привет всем Я хотел бы написать запрос, который исключает любой CHECKIN_DATE (TIMESTAMP) между понедельником 10 утра и вторником 7 утра. Я нашел две интересные функции DAYOFWEEK и HOUR, к сожалению, я не знаю, как писать, это где я в настоящее время с моим запросомНастройка параметра вокруг метки времени на db2

SELECT * FROM LIST_CHECKIN_AUDIT 
WHERE DOCUMENT_TYPE = 'DABL' 
AND CHECKIN_DATE BETWEEN (DAYOFWEEK(CHECKIN_DATE) = '2' AND HOUR(CHECKIN_DATE) = '9') AND (DAYOFWEEK(CHECKIN_DATE = '2' AND HOUR(CHECKIN_DATE = '7') 

Спасибо заранее!

ответ

1

Если вы пытаетесь сделать исключить любые записи, в которых CHECKIN_DATE находится между понедельником 10 утра и вторником 7 утра, тогда я думаю, что следующее должно работать на вас.

SELECT * 
    FROM LIST_CHECKIN_AUDIT 
WHERE DOCUMENT_TYPE = 'DABL' 
    AND (DAYOFWEEK(CHECKIN_DATE) <= 2 AND HOUR(CHECKIN_DATE) <= '9')) 
    OR (DAYOFWEEK(CHECKIN_DATE) >= 3 AND HOUR(CHECKIN_DATE) >= '7')) 
+0

Работает как шарм, кстати, знаете ли вы, как я мог бы снова появиться после 7 вечера во вторник? Я предполагаю, что это будет триггером. Но я не уверен! Еще раз спасибо! – OVO

+0

Рад, что это помогло. Вы хотите, чтобы вы включили эти записи, например, снова появляются, когда вы выполняете запрос после вторника 7PM? – vmachan

+0

Да, есть ли способ? Его часть гораздо большего запроса ... – OVO

Смежные вопросы