powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вывод уникальных записей
13 сообщений из 13, страница 1 из 1
Вывод уникальных записей
    #39424897
minioracle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время суток.
Подскажите пожалуйста, как вывести уникальные записи?!
Емеется таблица load, со структурой

id-integer
name - varchar 255
dtime - varchar 255

c заполненными данными

id name dtime
1 vasa 21.03.2017 21:17:23
2 kola 21.03.2017 21:17:23
3 sona 21.03.2017 21:17:23
4 peta 21.03.2017 21:47:23
5 ola 21.03.2017 21:47:23
6 vasa 21.03.2017 21:47:23
7 kola 21.03.2017 21:47:23
8 sona 21.03.2017 21:47:23

Так вот хотелось бы вывести все уникальные записи в период с 21:17:23 по 21:47:23 При этом позиции 6,7 и 8 выводились с вренемем 21:47:23 а не 21:17:23
ТИП:
id name dtime count (name)
4 peta 21.03.2017 21:47:23 (1)
5 ola 21.03.2017 21:47:23 (1)
6 vasa 21.03.2017 21:47:23 (2)
7 kola 21.03.2017 21:47:23 (2)
8 sona 21.03.2017 21:47:23 (2)
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39424940
minioracleДоброе время суток.
Подскажите пожалуйста, как вывести уникальные записи?!
Емеется таблица load, со структурой

id-integer
name - varchar 255
dtime - varchar 255
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
c заполненными данными

id  name dtime
1   vasa  21.03.2017 21:17:23
2   kola   21.03.2017 21:17:23
3   sona  21.03.2017 21:17:23
4   peta  21.03.2017 21:47:23
5   ola    21.03.2017 21:47:23
6   vasa  21.03.2017 21:47:23
7   kola   21.03.2017 21:47:23
8   sona  21.03.2017 21:47:23

Так вот хотелось бы вывести все уникальные записи в период с 21:17:23 по 21:47:23 При этом позиции 6,7 и 8 выводились с вренемем 21:47:23 а не 21:17:23
ТИП:
id  name dtime                     count (name)
4   peta  21.03.2017 21:47:23 (1)
5   ola    21.03.2017 21:47:23 (1)
6   vasa  21.03.2017 21:47:23 (2)
7   kola   21.03.2017 21:47:23 (2)
8   sona  21.03.2017 21:47:23 (2)


Используйте форматирование и будут ответы )
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39424973
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
minioracle,

where + group by + keep first/last
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39424999
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
minioracle,

можно банально
Код: plsql
1.
2.
3.
select max(id) id, name, max(dtime) dtime, count(name) from load
where to_date(dtime),'dd.mm.yyyy hh24:mi:ss') between to_date('21.03.2017 21:17:23','dd.mm.yyyy hh24:mi:ss') and to_date('21.03.2017 21:47:23','dd.mm.yyyy hh24:mi:ss')
group by name
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425001
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaximaXXL,
Код: plsql
1.
to_date(dtime,'dd.mm.yyyy hh24:mi:ss')
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425042
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaximaXXLminioracle,

можно банально
Код: plsql
1.
2.
3.
select max(id) id, name, max(dtime) dtime, count(name) from load
where to_date(dtime),'dd.mm.yyyy hh24:mi:ss') between to_date('21.03.2017 21:17:23','dd.mm.yyyy hh24:mi:ss') and to_date('21.03.2017 21:47:23','dd.mm.yyyy hh24:mi:ss')
group by name



имхо луче KEEP (DENSE_RANK ....

в общем случае max(id) может не соответствовать max(dtime)

.....
stax
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425052
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stax..,

Согласен, но для конкретной задачи я и написал, когда человек начнет задаваться этими вопросами то будет правильнее писать задачи =)
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425133
minioracle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stax..
имхо луче KEEP (DENSE_RANK ....

в общем случае max(id) может не соответствовать max(dtime)

.....
stax
Впервые слышу про KEEP (DENSE_RANK ....
ни когда не сталкивался с ними
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425147
Фотография --Eugene--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
minioracle,

FIRST
LAST
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425220
minioracleВпервые слышу про KEEP (DENSE_RANK ....
ни когда не сталкивался с ними

ну у тебя же mini.
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425258
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
minioraclestax..имхо луче KEEP (DENSE_RANK ....

в общем случае max(id) может не соответствовать max(dtime)

.....
stax
Впервые слышу про KEEP (DENSE_RANK ....
ни когда не сталкивался с ними

Код: 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.
  1  with t(id,name,dtime) as (
  2  select 1, 'vasa', to_date('21.03.2017 21:17:21') from dual union all
  3  select 2, 'kola', to_date('21.03.2017 21:17:22') from dual union all
  4  select 3, 'sona', to_date('21.03.2017 21:17:23') from dual union all
  5  select 4, 'peta', to_date('21.03.2017 21:47:24') from dual union all
  6  select 5, 'ola',  to_date('21.03.2017 21:47:25') from dual union all
  7  select 6, 'vasa', to_date('21.03.2017 21:47:26') from dual union all
  8  select 7, 'kola', to_date('21.03.2017 21:47:27') from dual union all
  9  select 8, 'sona', to_date('21.03.2017 21:47:28') from dual
 10  )
 11  select
 12   max(id) KEEP (DENSE_RANK last ORDER BY dtime,id) id
 13  ,name
 14  ,max(dtime) KEEP (DENSE_RANK last ORDER BY dtime,id) dtime
 15  from t
 16  group by name
 17* order by 1
SQL> /

        ID NAME DTIME
---------- ---- -------------------
         4 peta 21.03.2017 21:47:24
         5 ola  21.03.2017 21:47:25
         6 vasa 21.03.2017 21:47:26
         7 kola 21.03.2017 21:47:27
         8 sona 21.03.2017 21:47:28



......
stax
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425398
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если мне не изменяет память то есть distinct
...
Рейтинг: 0 / 0
Вывод уникальных записей
    #39425401
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя DISTINCT используется для удаления дубликатов
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вывод уникальных записей
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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