SQL - фильтрация значений по месяцам & amp; Дата

Простая альтернатива, позволяющая динамически определять поле, на котором основана сортировка:

$order_by = 'name';
usort($your_data, function ($a, $b) use ($order_by)
{
    return strcmp($a->{$order_by}, $b->{$order_by});
});

Это основано на классе Closure , который позволяет анонимные функции , Он доступен с PHP 5.3.

0
задан Daniel E. 16 January 2019 в 14:32
поделиться

1 ответ

Вы, кажется, хотите не обращать внимания на год. Если это так, то я бы порекомендовал:

TO_CHAR(datecol, 'MM/DD') BETWEEN '05/01' AND '07/08'

Чтобы BETWEEN работал в этом случае, вам нужен формат в порядке MM-DD.

Если вы хотите это для определенного года, то используйте прямые сравнения дат:

datecol >= DATE '2018-05-01' AND
datecol < DATE '2018-07-09'  -- note this is one day later

В датах Oracle есть компонент времени, поэтому вам следует соблюдать осторожность при проведении сравнений.

0
ответ дан Gordon Linoff 16 January 2019 в 14:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: