Oracle, укажите дату первого дня месяца. - PullRequest
24 голосов
/ 21 октября 2011

У меня есть переменная даты, я хотел бы преобразовать ее в первый день месяца,

  • Например: 10.10.2010 -> 01.10.2010
  • Например: 31.07.2010 -> 01.07.2010

Ответы [ 5 ]

43 голосов
/ 21 октября 2011

Согласно http://psoug.org/reference/date_func.html, это должно сработать, денди ...

SELECT TRUNC(yourDateField, 'MONTH') FROM yourTable
8 голосов
/ 21 октября 2011
SQL> select to_date('31/07/2010', 'DD/MM/YYYY') from dual;

TO_DATE('
---------
31-JUL-10

SQL> select trunc(to_date('31/07/2010', 'DD/MM/YYYY'), 'MM') from dual;

TRUNC(TO_
---------
01-JUL-10

SQL>
6 голосов
/ 21 октября 2011
select trunc(sysdate, 'mm') from dual;
2 голосов
/ 22 апреля 2017

попробуйте это


select trunc(sysdate, 'MM')firstday , trunc(last_DAY(sysdate)) lastday from dual;
2 голосов
/ 21 октября 2011
SELECT trunc(to_date('22-AUG-03'), 'MON') FROM dual;

Подробнее в руководстве .
О том, что Oracle требуется пустышка FROM: Выбор без предложения FROM в Oracle

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