SQL-запрос для получения дат X дней после текущей даты - PullRequest
0 голосов
/ 18 мая 2018

Как я могу построить запрос, который будет возвращать некоторое число 'x' дат после текущей даты (sysdate)?

Например, если сегодня 18-May-2018, а я запрашиваю x=2тогда я должен получить

19 мая 2018 года

20 мая 2018 года

в качестве вывода.

Ответы [ 3 ]

0 голосов
/ 18 мая 2018

Если вы используете PostgreSQL, вы можете использовать это:

SELECT current_date + s.a AS dates 
FROM generate_series(1, 2, 1) AS s(a);

и изменить 2 на значение вашего x

0 голосов
/ 18 мая 2018

поскольку вы написали sysdate, Я полагаю, что вы ищете базу данных oracle , если вы ищете базу данных Oracle, используйте следующее утверждение

select  trunc(sysdate)+level ldate from dual
connect by level <&x;

Выше запрос будет запрашивать х, когда вы задаете значение х как 3, он будет генерировать два дня от sysdate

0 голосов
/ 18 мая 2018

Вы можете использовать generate_series.

SELECT generate_series(current_date + 1, 
                       current_date + 2, 
                       interval '1' day)

Документы

В plsql вы можете установить x в качестве переменной изатем используйте его в своем запросе.

knayak=# \set x 5
knayak=# SELECT generate_series(current_date + 1,                                                                                                            
                                current_date + :x,                                                                                                                        
                                interval '1' day);

 generate_series      
---------------------------
 2018-05-19 00:00:00+05:30
 2018-05-20 00:00:00+05:30
 2018-05-21 00:00:00+05:30
 2018-05-22 00:00:00+05:30
 2018-05-23 00:00:00+05:30

Вы можете отформатировать даты в желаемом формате с помощью TO_CHAR

SELECT  to_char(dt,'DD-MON-YYYY') as dates
FROM    generate_series(current_date + 1, 
                        current_date + 2, 
                        interval '1' day) as dt

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