У меня есть следующий запрос:Выберите в зависимости CURDATE MySQL
SELECT tbl_usuarios.Correo,
tbl_alertas.Id,
tbl_alertas.Purpose,
tbl_alertas.Status,
tbl_alertas.OpenDate,
tbl_alertas.CloseDate,
tbl_alertas.Owner,
tbl_alertas.ValueStream,
tbl_alertas.Family
FROM tbl_usuarios
INNER JOIN tbl_alertas ON tbl_usuarios.Nombre = tbl_alertas.Owner
WHERE (STATUS = 'En aprobacion' OR STATUS = 'Activa')
AND CloseDate < CURDATE()
В результате этого запроса у меня есть следующая таблица:
Всё это нормально.
Теперь проблема в том, что я буду использовать этот запрос на своем веб-сайте, я создаю функцию JavaScript, которая будет выполняться каждые 5 и 19 месяцев. Мой вопрос, что я могу сделать, чтобы выбрать только строку, в которой его CloseDate равен < = yyyy-mm-07 или CloseDate> = yyyy-mm-07 и < = yyyy-mm-21 в зависимости от CURDATE (5 или 19), пример :
Curdate = yyyy-mm-05.
Ожидаемый результат: Данные Id 00003
Что я пытался добавлял еще один и в запросе, что-то вроде этого:
AND CloseDate < CURDATE() AND CloseDate <= '2016-09-07'
Если мой вопрос не так много ясно, позвольте мне объяснить с этим, Я хочу выбрать CloseDate '2016-09-07', когда curdate = '2016-whatever-05, 06', 07 или выберите CloseDate '2016-09-21', где curdate = '2016-whatever-19, 20, 21' ,
Это трудно объяснить, но здесь мы идем другими словами, представьте, что вы собираетесь выполнить мой запрос только дни пятого девятнадцатом не имеет значения, год и месяц, пример сегодня - 2016-09-05 (curdate). Я хочу, чтобы мой запрос только выбирал строку, где CloseDate = 2016-09-07, но мой текущий запрос выбирает оба. –
поэтому, когда 5-й день месяца вы хотите выбрать все записи с закрытым <= 7, а когда его 19, вы хотите выбрать все записи с закрытым> = 7 и закрыть <= 21 – Allkin
Да, это то, что я хочу –