IS_IN_ENUM('value', 'val1', 'val2', 'val3')
'value'が('val1'、'val2'、'val3')にある場合にtrueを返すMySQL関数を作成しようとしています。できることはわかっていますSELECT 'value' IN ('val1', 'val2', 'val3')
が、そのような関数の作成方法を学びたいだけなので、それほど面白くありません。
ADD
例を挙げます。次の関数について考えてみましょう。
CREATE FUNCTION my_add (
a DOUBLE,
b DOUBLE
)
RETURNS DOUBLE
BEGIN
IF a IS NULL THEN
SET a = 0;
END IF;
IF b IS NULL THEN
SET b = 0;
END IF;
RETURN (a + b);
END;
私がそうするならSELECT my_add(1, 1)
、私は2を得る(すごい!)。
この関数を改善して呼び出すことができるようにするにはどうすればよいですか?
SELECT my_add(1, 1); -- 2
SELECT my_add(1, 1, 1); -- 3
SELECT my_add(1, 1, 1, 1); -- 4
SELECT my_add(1, 1, 1, 1, 1, 1, .....); -- n