Мне было интересно, если кто-то может мне помочь, мне нужно показать это в оракуле.
Для этого я использую этот выбор:
SELECT m.idMedicamento, m.nombre, m.precio
FROM medicamento m
WHERE m.idMedicamento IN (
SELECT idMedicamento
FROM (
SELECT idMedicamento
FROM medicamento
ORDER BY precio ASC)
WHERE ROWNUM <=3
)
OR m.idMedicamento IN (
SELECT idMedicamento
FROM (
SELECT idMedicamento
FROM medicamento
ORDER BY precio DESC)
WHERE ROWNUM <=3
)
ORDER BY m.precio DESC;
нопроблема в том, что я не могу использовать подвыборы, мне нужно использовать функции или процедуры, и я подумал в этой функции:
CREATE OR REPLACE FUNCTION MAXI RETURN FLOAT IS
total INT := 0;
CURSOR ANIO IS
SELECT idMedicamento
FROM medicamento
ORDER BY precio DESC;
a anio%ROWTYPE;
BEGIN
OPEN ANIO;
LOOP
FETCH ANIO INTO a;
EXIT WHEN ANIO%NOTFOUND;
END LOOP;
CLOSE ANIO;
RETURN ROUND(a ,2);
END;
Это функция только для возврата максимума, но я не могу вернутькурсор.Я не знаю, понимаете ли вы меня, спасибо за ваше время.