У меня есть данные, которые в этом формате:Создание упорядоченного флага с использованием критериев даты
id start_date end_date
25 1-Jan-00 24-Jan-00
25 26-Jan-00 5-Feb-00
25 3-Nov-00 6-Mar-01
25 10-Mar-01 4-Jun-02
25 2-Jul-03 6-Aug-03
93 2-May-14 4-May-14
93 8-May-14 6-Aug-14
93 9-Aug-14 1-Feb-15
93 3-Feb-15 14-Mar-15
93 9-Jul-15 1-Dec-15
93 2-Mar-16 7-Mar-16
93 2-Apr-16 1-May-16
Я хочу, чтобы создать поле, называемое «string_num», учитывающий рядом, чтобы быть частью строки, если дата окончания предыдущей строки (упорядоченной по id и start_date) в течение 7 дней с даты начала текущей строки. Это будет выглядеть так:
id start_date end_date string_num
25 1-Jan-00 24-Jan-00 1
25 26-Jan-00 5-Feb-00 1
25 3-Nov-00 6-Mar-01 2
25 10-Mar-01 4-Jun-02 2
25 2-Jul-03 6-Aug-03 3
93 2-May-14 4-May-14 1
93 8-May-14 6-Aug-14 1
93 9-Aug-14 1-Feb-15 1
93 3-Feb-15 14-Mar-15 1
93 9-Jul-15 1-Dec-15 2
93 2-Mar-16 7-Mar-16 3
93 2-Apr-16 1-May-16 4
Должен ли я использовать рекурсивный запрос для этого?
Какая СУБД вы используете? –
@a_horse_with_no_name Я использую sql-разработчик для подключения к базе данных Oracle – staplertape
Хммм. , , Вы определяете логику, которая является логической («if») и вызывает что-то «string_id». Ваши желаемые результаты имеют целое число и нечто, называемое 'string_num'. Просьба уточнить вопрос. –