powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / выборка макс среди всех значений из цикла
17 сообщений из 17, страница 1 из 1
выборка макс среди всех значений из цикла
    #39278908
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как из значения цикла ставить максимальную дату с одинаковых поле Value? не меняя значения из цикла
for i in (select * from date) loop

insert into table values (Value1,date ,Value3)

такой вариант не прокатит, только используя все значения из цикла
select *
from (select Value
Value1,
Value2,
row_number() over (partition by Value1 order by date desc) as num from table )
where num<2
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278920
ora601
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wiiild_che,
first_value(date) over (partition by value order by date desc nulls last) вместо date .
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278927
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ora601first_value(date) over (partition by value order by date desc nulls last) вместо date .
Суров.
Просто
Код: plsql
1.
max(date) over (partition by value)


не?
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278931
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я спрашиваю как именно тут можно вывести макс:
insert into table values (Value1,date ,Value3)
как сделать так, чтоб при вставки выбиралось максимальное значения из цикла.
к примеру: в цикле 10 значений, у 5х значений одинаковое поле Value1, но разная дата. Как сделать чтоб он вставлял эти значения с максимальной датой в новую таблицу, но пробегаясь по всем записям из цикла
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278934
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wiiild_cheя спрашиваю
Грозен-то как... :)

Код: plsql
1.
2.
3.
4.
5.
insert into table (Value1, Value3, date)
select Value1
     , Value3
     , max(date) over (partition by Value1) last_dt
  from table
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278936
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymous,не в обиду)
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278938
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymous,у меня в запросе есть еще параметры процедуры которые нужно ставить, а если через секл вставлять запись, но не получается так, можно ли примерно так сделать : insert into table values(max(date) , если можно, так как такое можно реализовать?
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278940
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы ответил, если бы понял хотя бы половину падежей.
Стандартный способ задать подобный вопрос таков:
- краткое описание задачи
- пример исходных данных
- ожидаемый результат (в виде данных, которые получились бы из исходных, если бы задача была решена)
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278944
Фотография JaRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wiiild_cheу меня в запросе есть еще параметры процедуры которые нужно ставить, а если через секл вставлять запись,абсолютно так же как и поля: insert .. select parameter1, field1 ...
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278945
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymous,
вставить данные из таблица table1 в table2.
Table 1
id data
1 01.10
2 02.10
3 03.10
4 04.10
1 05.10

table 2( id,data,user)--поле id тут уникальное
Поле user=заполнять константа
вставить все данные из таблицы 1 с максимальной датой, в таблицу 2
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278946
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
JaRo,а вот это поле value1 в селекте мне нужно обращаться к курсору, select parametr,cur.value1 from моя таблица , так можно делать?
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278955
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл добавить, запись из первой таблица
1 01.10(с мин датой) должна добавиться в table3
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278959
Фотография JaRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wiiild_che,
можно. Вот только нужно ли? Вам действительно нужен цикл? Одним insert select не обойтись?

PS: Давайте добавим немного уважения к читающим - перед отправкой читайте сами, что написали. А то разбор вашей речи смахивает на перевод с непонятного языка на русский..
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278961
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wiiild_cheandrey_anonymous,
вставить данные из таблица table1 в table2.
Table 1
id data
1 01.10
2 02.10
3 03.10
4 04.10
1 05.10

table 2( id,data,user)--поле id тут уникальное
Поле user=заполнять константа
вставить все данные из таблицы 1 с максимальной датой, в таблицу 2
Код: plsql
1.
2.
3.
4.
5.
6.
insert into table2(id,data,user)
select id, data, 'Const' from(
select t.*
     , row_number() over(partition by id order by data desc) rn
  from table1 t
) where rn=1;



Код: plsql
1.
2.
3.
4.
insert into table2(id,data,user)
select id, max(data), 'Const' 
  from table1 t
 group by id;



Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
for i in (select t.*
              , row_number() over(partition by id order by data desc) rn
           from table1 t
) loop
  -- тут проходим по всем  записям - это имелось ввиду?
  dbms_output.put_line('Проходим по записи :) '||i.id);
  if i.rn = 1 then
    -- а вставляем только с макс. датой
    insert into table2(id,data,user) values(i.id,i.data,'Const');
  end if;
end loop;
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278973
Фотография JaRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуем погадать. Вот это?
Код: plsql
1.
2.
3.
4.
5.
6.
 INSERT ALL
      INTO table2 values (id, max_date, username)
      /*WHEN min_date != max_date*/ INTO table3 values (id, min_date, username)
   SELECT id , min(data) min_date, max(data) max_date, 'user' username
      FROM table1
      GROUP BY id
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39278977
wiiild_che
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не совсем то, но я уже разобрался. спасибо что откликнулись
...
Рейтинг: 0 / 0
выборка макс среди всех значений из цикла
    #39279115
Patience
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я просто поражаюсь тупости автора и терпению окружающих, предлагающих какие-то ответы на невнятное блеяние "дикого чела".
авторя спрашиваю
авторне совсем то, но я уже разобрался
типа Вы все говно, а я Д'Артаньян.

П.С. и такие темы плодятся каждый день, они на свет что ли вылазят?
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / выборка макс среди всех значений из цикла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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