Почему созданная функция в postgresql возвращает большой некорректное значение?

Есть запрос Создать и выполнить функцию, в которой по номеру рейса вывести количество свободных мест.

ДИАГРАММА БД: введите сюда описание изображения

КОД ФУНКЦИИ:

create function get_free_seat_of_flighs(flight_number character) returns int as
$$
declare TOTAL_SEAT int;
declare TOTAL_FREE_SEAT int;
begin
    select count(*) into TOTAL_SEAT
    from seats s
    inner join flights f ON s.aircraft_code = f.aircraft_code
    where f.flight_no = flight_number;
    
    select count(*) into TOTAL_FREE_SEAT
    from boarding_passes bd
    inner join flights f ON bd.flight_id = f.flight_id 
    where f.flight_no = flight_number;
    
    return TOTAL_SEAT - TOTAL_FREE_SEAT;
end
$$
language 'plpgsql'

Функция принимает номеру рейса, в моем случае PG0134

SELECT get_free_seat_of_flighs('PG0134')

Но почему функция возвращает 5354 разве не слишком много места для одного рейса ? Или может я не понимаю как работает аэропорт ?

РЕЙСЫ ЗАПИСАННЫЕ В Таблицу flights: введите сюда описание изображения


Ответы (0 шт):