Ваша функция ожидает, что будут возвращены только 6 столбцов
(
user_id int,
given_name varchar(55),
family_name varchar(55),
password varchar(255),
email varchar(255),
date_of_birth date
)
Но ваш оператор select возвращает 8 столбцов
player.user_id, player.given_name, player.family_name, player.password, player.email, player.date_of_birth,player.player_name AS player_name, player.team_id AS team_id
вы можете добавить эти 2 столбца в оператор return как
(
user_id int,
given_name varchar(55),
family_name varchar(55),
password varchar(255),
email varchar(255),
date_of_birth date,
player_name <type>,
team_id <type>
)
и в операторе else вы возвращаете все столбцы из таблицы пользователей. Вы можете указать столбцы, которые необходимо вернуть, иначе вы можете столкнуться с проблемой и там.