powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Очень интересная задача
11 сообщений из 11, страница 1 из 1
Очень интересная задача
    #39563721
torrenton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Будут благодарен, за помощь в решении задачи.

В таблице есть поля:
- фамилия,
- имя,
- отчество,
- дата рождения
- и еще несколько других.
Надо выбрать все записи таблицы, при этом в отдельном поле вывести отметку для записей, где для каждого уникального сочетания ФИО даты рождения больше самой минимальной и меньше самой максимальной для каждого уникального ФИО.
Если записей с такими ФИО только 1 или 2, то они должны быть помечены.
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563744
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrenton,

тебе интересно, ты и делай
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563749
Фотография шК0ДЕР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563756
torrenton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые ГУРУ SQL, очень прошу вас помочь вас в решении непосильной для меня задачи.

Буду всем советовать ваш драгоценный опыт и рекомендовать вам нужный сайт.
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563777
torrentonвам нужныйкто на ком стоял?
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563787
Фотография шК0ДЕР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrentonБуду всем советовать
Слабо мотивируешь, твои сокурсники для ГУРУ - что камни в почках
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563815
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrenton,
Мессир, чтобы Вам помогли (а мы не звери), Вам нужно показать, что Вы что-то сделали.
Вы не первый: Студентам, желающим помощи


То есть:
1) Вы должны четко описать условия задачи, что на входе, что на выходе
2) Подготовить тестовые данные, желательно в формате
Код: plsql
1.
2.
3.
4.
5.
6.
with staff (name1,name2,family,birthday) as (
select 'Амвросий','Амбруазович','Выбегайлло',to_date('13.11.1812,'DD.MM.YYYY') from dual union all
select 'Александр','Иванович','Привалов',to_date('22.10.1938,'DD.MM.YYYY') from dual union all
select 'Христобаль',Хозеевич','Хунта',to_date('01.01.0005,'DD.MM.YYYY') from dual
)
select name1,name2,family,birthday from staff;



3) Показать Ваш селект и внятно объяснить, что не получилось

p.s. правильно охранять и стойко оборонять оформлять и внятно отвечать
ИСПОЛЬЗУЙТЕ ТЭГИ SRC для формления

Удачи!
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563828
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrenton,

Правильный код...
Код: plsql
1.
2.
3.
4.
5.
6.
7.
with staff (name1,name2,family,birthday) as (
select 'Амвросий','Амбруазович','Выбегайлло',to_date('13.11.1812','DD.MM.YYYY') from dual union all
select 'Александр','Иванович','Привалов',to_date('22.10.1938','DD.MM.YYYY') from dual union all
select 'Христобаль','Хозеевич','Хунта',to_date('01.01.0005','DD.MM.YYYY') from dual
)
select name1,name2,family,birthday from staff
/
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563835
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrenton, "вывести отметку для записей, где для каждого уникального сочетания ФИО даты рождения больше самой минимальной и меньше самой максимальной для каждого уникального ФИО." означает пометить все кроме min/max для каждого уникального ФИО. Посему банальная аналитическая функция MIN/MAX есть все что нужно для этой "Очень интересная задача".

SY.
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563844
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
torrenton,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
SQL> ed
Wrote file afiedt.buf

  1  with t (f,i,o,dn) as (
  2  select 'ivanov','ivan','ivanovich',date '1960-01-05' from dual union all
  3  select 'ivanov','ivan','ivanovich',date '1970-01-05' from dual union all
  4  select 'ivanov','ivan','ivanovich',date '1971-01-05' from dual union all
  5  select 'ivanov','ivan','ivanovich',date '2000-01-05' from dual union all
  6  select 'ретроv','ivan','ivanovich',date '1980-01-05' from dual union all
  7  select 'ретроv','ivan','ivanovich',date '1990-01-05' from dual
  8  )
  9  select t.*
 10  ,case
 11    when count(*) over (partition by f,i,o)<=2 then 1
 12    when min(dn)  over (partition by f,i,o)< dn and
 13         max(dn)  over (partition by f,i,o)> dn then 1
 14   end flag
 15*  from t
SQL> /

F      I    O         DN             FLAG
------ ---- --------- -------- ----------
ivanov ivan ivanovich 05.01.60
ivanov ivan ivanovich 05.01.70          1
ivanov ivan ivanovich 05.01.71          1
ivanov ivan ivanovich 05.01.00
ретроv ivan ivanovich 05.01.80          1
ретроv ivan ivanovich 05.01.90          1

6 rows selected.



.....
stax
...
Рейтинг: 0 / 0
Очень интересная задача
    #39563847
torrenton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
Буду дальше изучать матчасть...)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Очень интересная задача
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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