Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Proszę o pomoc - w tej instrukcji SELECT spodziewano się klauzuli INTO
Forum PHP.pl > Forum > Bazy danych > Oracle
AndMix
Witam

Napisałem blok który wylicza srednią cenę ksiazki i zapisuje wartośc do zmiennej

DECLARE

srednia NUMBER(4,2);

BEGIN

SELECT AVG(cena) INTO srednia FROM ksiazka;

if srednia > 0 then
dbms_output.put_line('Średnia cena książki: '||srednia);
else
dbms_output.put_line('Średnia cena książki jest równa lub mnieksza od zera');
end if;
END ;

teraz chcę do dać następne zapytanie które pobiera z tabeli imię i nazwisko autora z tabeli autor dla książek których cena jest większa od sredniej ceny książki.

Problem jest taki że jak dodam jakiegokolwiek selecta to dostaję błąd że oczekiwana jest instrukcja INTO.
PLS-00428: w tej instrukcji SELECT spodziewano się klauzuli INTO
Selecta wpisuję pod end if.

...
dbms_output.put_line('Średnia cena książki jest równa lub mnieksza od zera');
end if;

SELECT * FROM autor;
END ;

Jak powinienem wykonać to 2 zapytanie?


Pozdrawiam.
f1ames
Nie wiem czy temat nadal aktualny, ale...
Z tego co wiem jeżeli w bloku mamy SELECTa to trzeba przypisać zwrócony rekordy albo do zmiennej(tak jak w pierwszym SELECT) albo jeżeli zapytanie zwraca więcej wierszy, do kursora.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.