MySQL自定義函數是MySQL數據庫中的一種功能,可以讓程序員自己定義MySQL函數。自定義函數包括標量函數和聚合函數。
其中標量函數是一種函數,它只返回一個值。聚合函數是一種函數,它返回多個值(即行)并且可以在這些行之間執行聚合計算。
MySQL標量函數可以使用while循環語句,下面是一個示例:
DELIMITER $$ CREATE FUNCTION count_to_ten () RETURNS INT BEGIN DECLARE i INT DEFAULT 1; DECLARE sum INT DEFAULT 0; WHILE i<= 10 DO SET sum = sum + i; SET i = i + 1; END WHILE; RETURN sum; END$$ DELIMITER ;
在這個示例中,我們使用了DECLARE語句聲明了兩個變量i和sum,其中i等于1,sum等于0。然后我們使用WHILE循環語句,重復執行一些代碼,直到i的值大于10。在每次迭代期間,我們將i加到sum中,并將i設置為下一個值。最后,我們使用RETURN語句返回sum的值。
要使用自定義函數,我們可以像調用內置函數一樣直接調用它:
SELECT count_to_ten ();
這將返回55,因為從1加到10的總和為55。