Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с запросом / 10 сообщений из 10, страница 1 из 1
16.10.2018, 12:15
    #39718041
cptngrb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Есть таблица командировок.
id_key, id_ord, town
1, 1, Москва
1, 2, null
1, 3, null
1, 4, Тула
1, 5, null
1, 6, null
1, 7, null

Как сделать запрос, чтобы в выборке получилось без использования хранимых процедур

1, 1, Москва
1, 2, Москва
1, 3, Москва
1, 4, Тула
1, 5, Тула
1, 6, Тула
1, 7, Тула
...
Рейтинг: 0 / 0
16.10.2018, 12:23
    #39718052
cptngrb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
with t0 as (
select 1 key_id, 1 ord, 'Москва' town from dual
union all
select 1 key_id, 2 ord, null town from dual
union all
select 1 key_id, 3 ord, null town from dual
union all
select 1 key_id, 4 ord, 'Тула' town from dual
union all
select 1 key_id, 5 ord, null town from dual
union all
select 1 key_id, 6 ord, null town from dual
union all
select 1 key_id, 7 ord, null town from dual
union all
select 1 key_id, 8 ord, null town from dual)
select * from t0
...
Рейтинг: 0 / 0
16.10.2018, 12:38
    #39718061
MazoHist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Уточните версию. Для >=11 - RTFM lag ignore nulls
...
Рейтинг: 0 / 0
16.10.2018, 12:39
    #39718062
cptngrb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
MazoHist,
Oracle 11g
...
Рейтинг: 0 / 0
16.10.2018, 12:46
    #39718069
cptngrb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
MazoHist,
спасибо
...
Рейтинг: 0 / 0
16.10.2018, 12:47
    #39718073
MazoHist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
...
Рейтинг: 0 / 0
18.10.2018, 15:00
    #39719417
vitvik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
with t0 as (
select 1 key_id, 1 ord, 'Москва' town from dual
union all
select 1 key_id, 2 ord, null town from dual
union all
select 1 key_id, 3 ord, null town from dual
union all
select 1 key_id, 4 ord, 'Тула' town from dual
union all
select 1 key_id, 5 ord, null town from dual
union all
select 1 key_id, 6 ord, null town from dual
union all
select 1 key_id, 7 ord, null town from dual
union all
select 1 key_id, 8 ord, null town from dual)
select key_id, ord, lag(town IGNORE NULLS,1,town) over ( partition by key_id order by ord) from t0
...
Рейтинг: 0 / 0
18.10.2018, 15:38
    #39719437
vitvik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
предыдущее не правильно
вот
select key_id, ord, nvl(town,lag(town IGNORE NULLS) over ( partition by key_id order by ord)) from t0
...
Рейтинг: 0 / 0
18.10.2018, 16:57
    #39719503
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
MazoHist,

Тогда уж last_value ignore nulls, а не lag
...
Рейтинг: 0 / 0
18.10.2018, 17:57
    #39719536
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
для любителей "старины глубокой": способ, работающий даже на версии Oracle 8i
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с запросом / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]