在MySQL中创建函数

时间:2014-10-20 19:05:42

标签: mysql

我只是需要一点启动,我有点困惑如何做到这一点。我需要做的是拉一个' customer_id'从表格中查看客户租用的商品数量。如果没有' customer_id'然后它会返回0.我还没有完全掌握如何做到这一点,所以任何帮助都会受到赞赏。

创建表:

CREATE TABLE Customer
(name VARCHAR(30) NOT NULL,
    address VARCHAR(70),
    phone CHAR(10) NOT NULL,
    customer_id INT(10) PRIMARY KEY NOT NULL);

创建功能:部分启动,但不确定我是否正确执行。

DELIMITER $$
CREATE FUNCTION Num_Of_Rented(IN customer_id INT(10))
RETURNS INT(10)
BEGIN
    DECLARE num INT(10);
    SELECT IFNULL()
    FROM
    WHERE
    RETURN num;
END $$
DELIMITER;

1 个答案:

答案 0 :(得分:1)

在函数内部,您需要在变量中选择值,然后返回变量:

DECLARE num INT(10);
SELECT COUNT(field) INTO num
FROM table
WHERE condition;
RETURN num;

在你的情况下:

DELIMITER $$
CREATE FUNCTION Num_Of_Rented(IN custId INT(10))
RETURNS INT(10)
BEGIN
  DECLARE num INT(10);
  SELECT COUNT(*) INTO num
  FROM Customer C
  WHERE C.customer_id = custId ;
  RETURN num;
END $$
DELIMITER;