title
、firstname
およびのような列を持つテーブルが与えられますlastname
。MySQL では、指定された列を CONCAT して返す fullname() という名前のこのストアド関数を作成しました。
私の考えは、この SQL ステートメントを実行するだけで、フルネームを取得できるというものでした。
SELECT *, fullname() FROM people;
うまくいきません。誰かが理由を知っていますか?私はストアド関数にかなり慣れていません。
CREATE FUNCTION `fullname`()
RETURNS VARCHAR(255)
LANGUAGE SQL
NOT DETERMINISTIC
READS SQL DATA
SQL SECURITY DEFINER
COMMENT ''
BEGIN
RETURN(CONCAT(title, " ", firstname, " ", lastname));
END