Есть ли какой-нибудь способ установить шаблон даты и назначить определенный день? - PullRequest
1 голос
/ 03 апреля 2019

У меня сложный выбор с большим количеством внутренних падежей внутри падежа в выражениях падежа, чтобы попытаться определить правильную дату, но после того, как все выяснено, нужно использовать только первый день месяца.

Например, я могу получить 08/10/2018, но я хочу, чтобы мой конечный результат был 08/01/2018.

Возможно ли что-то сделать в соответствии с приведенным ниже описанием (очевидно, не работает, ноищу предложения).

SELECT TO_CHAR(sysdate,'MM/01/YYYY') FROM DUAL;

В этом случае sysdate будет заменен большим списком дел и расчетов.Единственный способ сделать это - сделать

 TO_CHAR(huge_calculations,'MM')||'01'||TO_CHAR(huge_calculations_again,'YYYY')

1 Ответ

0 голосов
/ 03 апреля 2019

Вот несколько выражений, которые возвращают первый день месяца для данной даты:

Просто:

SELECT TRUNC(sysdate, 'MM') FROM DUAL;

Или:

SELECT TRUNC(sysdate) - TO_NUMBER(TO_CHAR(sysdate,'DD')) + 1 FROM dual

Илииспользуя LAST_DAY:

SELECT ADD_MONTHS((LAST_DAY(sysdate)+1),-1) FROM DUAL;

Демонстрация на DB Fiddle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...