Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Администрирование Oracle Database:
- Установка и настройка базы данных
- Обновление, применение патчей
- Оптимизация, настройка производительности
- Обучение, подготовка персонала, оптимизация
  • Страница:
  • 1
  • 2
  • 3
  • 4

ТЕМА:

Задачка для начинающего 12 года 3 мес. назад #3667

  • Zuma
  • Zuma аватар Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Спасибо получено: 0
В таблице записана инфа об уд.и неуд. попытках подключения к БД (Пользователь, Уд\Неуд, Время). Нужно получить список пользователей, которые совершили подряд три и более неуд. попыток.
USERNAME LOG_RESULT LOG_TIME 
------------------------------ ---------- ------------------------- 
Smith Удачно 15.12.10 
Hacker Неудачно 14.12.10 
Hacker Неудачно 13.12.10 
Hacker Неудачно 12.12.10 
Hacker1 Удачно 11.12.10 
Hacker1 Неудачно 10.12.10 
Hacker1 Удачно 09.12.10 
Hacker1 Неудачно 08.12.10 
Hacker1 Удачно 07.12.10 
Hacker1 Неудачно 06.12.10 
Hacker2 Неудачно 05.12.10
Я так понимаю нужно join-ы использовать, но моих способностей не хватает.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Задачка для начинающего 12 года 3 мес. назад #3668

Нет, Джойны не нужны
Поиск>stff start_of_group

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Задачка для начинающего 12 года 3 мес. назад #3670

Как вариант
вычислить в каждой строке lag(LOG_RESULT,1) и lag(LOG_RESULT,2)
отобрать уникальных юзеров.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Задачка для начинающего 12 года 3 мес. назад #3671

select distinct USERNAME
from (
	select t.*, lag(LOG_RESULT) over(partition by username order by LOG_TIME) LOG_RESULT_1
		, lag(LOG_RESULT,2) over(partition by username order by LOG_TIME) LOG_RESULT_2
	from t)
where LOG_RESULT='Неудачно' and LOG_RESULT=LOG_RESULT_1 and LOG_RESULT=LOG_RESULT_2

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Задачка для начинающего 12 года 3 мес. назад #3672

  • Zuma
  • Zuma аватар Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Спасибо получено: 0
Спасибо, уже начал разбираться с LAG-ами, и уже рашение подкинули.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Задачка для начинающего 12 года 3 мес. назад #3673

  • Zuma
  • Zuma аватар Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Спасибо получено: 0
А возможно решить задачу без использования аналитических функций?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
  • 2
  • 3
  • 4
Время создания страницы: 0.411 секунд