MariaDB / MySQL Функция Select в возвращает более одной строки, 3 переменные - PullRequest
0 голосов
/ 25 апреля 2018

Я сейчас изучаю SQL, и мы используем MariaDB и Toad для MySQL в качестве нашего графического редактора. В настоящее время мы должны создать функцию, которая возвращает 3 разные переменные.

SELECT ourFunction(c.dni), v.CV, cl.nom_color
INTO @var_age, @var_cv, @var_color
    FROM vehicle v
    INNER JOIN client c
      ON c.dni=v.dni
    INNER JOIN color cl
      ON v.color=cl.cod_color

Нам нужно, чтобы каждая переменная давала нам точное значение, чтобы мы могли использовать его в другой функции. В настоящее время проблема в том, что мы не можем получить требуемые результаты для переменной.

Клиент 1: N для транспортного средства

Транспортное средство от 1: 1 до цвета

ourFunction рассчитывает возраст клиента. Вот что он делает:

DELIMITER //
  CREATE FUNCTION ourFunction(dni varchar(9))
  RETURNS tinyint(3)
  BEGIN
   select TIMESTAMPDIFF (YEAR, birth_date, CURDATE()) AS age
INTO @age
FROM client c
WHERE c.dni=dni;
RETURN @age;
  END //
DELIMITER ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...