Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Помогите с запросом  [new]
Intensiv
Member

Откуда:
Сообщений: 59
Есть табличка:
ID n
1 4
2 12
3 85
4 12
5 4
6 7
7 9
8 12
9 85
10 12
11 45
12 12
13 85
14 85
15 13
16 15
17 12

Нужно удалить строки зачения n в которых составляют последовательность 12,85,12
Спасибо.
24 янв 08, 14:49    [5198201]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 116169
n,
lead(n) over (order by id)
lead(n,2) over (order by id)
24 янв 08, 14:50    [5198214]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Intensiv
Member

Откуда:
Сообщений: 59
dmidek,
спасибо
24 янв 08, 14:56    [5198256]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
dmidek
Member

Откуда: Киев - Дортмунд
Сообщений: 116169
dmidek
n,
lead(n) over (order by id)
lead(n,2) over (order by id)


Это уж чересчур схематично
Условие фильтрации

WHERE (n = 12 AND lead(n) over (order by id) = 85 and lead(n,2) over (order by id) = 12)
OR (n = 85 AND lag(n) over (order by id) = 12 and lead(n) over (order by id) = 12)
OR (n = 12 AND lag(n) over (order by id) = 85 and lag(n,2) over (order by id) = 12)
24 янв 08, 15:00    [5198282]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Intensiv
Member

Откуда:
Сообщений: 59
Ну до этого я уже сам дошел, честно говоря просто не разу не приходилось с LEAD сталкиваться. А проблем много решается.
24 янв 08, 15:04    [5198318]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 18351
Любопытно - что делать с последовательностью

12,85,12,85,12
24 янв 08, 15:07    [5198347]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Intensiv
Member

Откуда:
Сообщений: 59
В примере упрощенный вариант. В реальности последовательность длиннее и в реальных данных такого быть не может в связи с особенностями задачи. Ну а вообще - просто еще пара условий.
24 янв 08, 17:22    [5199536]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить