У меня есть таблица с идентификатором, sub_id и значение coloumnsOracle SQL группы сумма
ID SUB_ID Value
100 1 100
100 2 150
101 1 100
101 2 150
101 3 200
102 1 100
SUB идентификатор может отличаться от 1..maxvalue (В данном примере это 3). Мне нужна сумма значений для каждого Sub_ID. Если SUB_ID меньше MAXVALUE для идентификатора участника, тогда он должен принимать MAX (SUB_ID) каждого идентификатора. Как показано ниже (В этом примере для ID = 100 для SUB_ID 3 это должно быть 150, т.е. 2 < 3, поэтому значение = 150))
SUB_ID SUM(values) Remarks
1 300 (100+100+100)
2 400 (150+150+100)
3 450 (150+200+100)
Это легко сделать в PL/SQL. Можно ли использовать SQL для того же с помощью модели пункта или любые другие варианты
Вы можете расширить ваш набор данных выше? Ваш текст указывает, что есть id = 100 и sub_id = 3, однако эта комбинация не существует в наборе данных. – Nick
SUB_ID = 3 является максимальным SUB_ID для таблицы enitire. для ID = 100 это не происходит. Таким образом, он должен принимать значение Max SUB_ID для 100. Таким образом, он должен принимать 150. В случае 102 он должен принимать 100 –
Есть ли только 3 суб_иды? Кроме того, можете ли вы разместить свой pl/sql, который делает эту логику? – Nick