MySQL で 10 進数の等級を文字の等級に変換する関数を作成しようとすると、構文エラーで問題が発生します。
問題は何ですか?
エラー 1064 (42000): SQL 構文にエラーがあります。near 'conv(gpa DOUBLE) RETURNS CHAR BEGIN
DECLARE grade CHAR;を使用する正しい構文については、mySQL サーバーのバージョンに対応するマニュアルを確認してください。
SELECT CASE WHEN gp' at line 1
これが私のコードです:
delimiter $
CREATE FUNCTION conv(gpa DOUBLE)
RETURNS CHAR
BEGIN
DECLARE grade CHAR;
SELECT CASE WHEN gpa BETWEEN 3.5 AND 4.0 THEN 'A'
WHEN gpa BETWEEN 3.0 AND 3.4 THEN 'B'
WHEN gpa BETWEEN 2.5 AND 2.9 THEN 'C'
WHEN gpa BETWEEN 2.0 AND 2.4 THEN 'D'
ELSE 'F'
END INTO grade
RETURN grade;
END $