MySQL - funkcje

0

Cześć
otóż usłyszałem, że w ciele funkcji nie można odwoływać się do danych tabeli. Natomiast poniższy kod działa i nie wali błędami. Pytanie moje jest takie, czy jest to poprawne, czy czegoś po prostu nie rozumiem. Z góry dzięki za odpowiedź. A oto kod:

delimiter //
create function wyznaczKapitana(numerLotu int) returns varchar(150)
    begin
        declare imieWybranegoKapitana varchar(150) default '';
        declare iloscGodzin int default 0;
        set iloscGodzin = (select min(IloscWylatanychGodzin) from pracownicy where (IDStanowiska = 2 or IDStanowiska = 3));
        set imieWybranegoKapitana = (select concat('Dla lotu numer ' ,numerLotu,' ', 'przydzielono kapitana: ' ,Imie, ' ', Nazwisko) from pracownicy where IloscWylatanychGodzin = iloscGodzin);
        return imieWybranegoKapitana;
end //
select wyznaczKapitana(5);
0

Każdy problem można zaprogramować w dowolnie skomplikowany sposób. Tutaj pojechałeś mocno, bo to powinno być jedno polecenie select.

1 użytkowników online, w tym zalogowanych: 0, gości: 1