Sakila 数据库中的存储函数
本文整理了 Sakila 数据库中定义的 3 个存储函数及每个函数的用法。
Sakila 数据库中共定义了 3 个存储函数。
get_customer_balance
get_customer_balance
函数返回指定客户帐户的当前的余额。
参数
p_customer_id
- 要检查的客户的 ID,来自
customer
表的customer_id
。 p_effective_date
- 客户余额的截止日期。此日期之后的任何租金、付款等均不计算在内。
返回值
此函数返回客户帐户的当前余额。
示例用法
SELECT get_customer_balance(298,NOW());
+---------------------------------+
| get_customer_balance(298,NOW()) |
+---------------------------------+
| 22.00 |
+---------------------------------+
1 row in set (0.00 sec)
inventory_held_by_customer
inventory_held_by_customer
函数返回正在租用指定库存项目的客户的 customer_id
。
参数
p_inventory_id
- 要检查的库存项目的 ID。
返回值
此函数返回当前正在租用该项目的客户的 customer_id
。如果该项目未出租,返回 NULL
。
示例用法
SELECT inventory_held_by_customer(8);
+-------------------------------+
| inventory_held_by_customer(8) |
+-------------------------------+
| NULL |
+-------------------------------+
1 row in set (0.00 sec)
SELECT inventory_held_by_customer(9);
+-------------------------------+
| inventory_held_by_customer(9) |
+-------------------------------+
| 366 |
+-------------------------------+
1 row in set (0.00 sec)
inventory_in_stock
inventory_in_stock
函数返回一个布尔值,指示指定的库存项目是否有库存。
参数
p_inventory_id
- 要检查的库存项目的 ID。
返回值
此函数返回 TRUE
或 FALSE
以指示指定的项目是否有库存。
示例用法
SELECT inventory_in_stock(9);
+-----------------------+
| inventory_in_stock(9) |
+-----------------------+
| 0 |
+-----------------------+
1 row in set (0.00 sec)
SELECT inventory_in_stock(8);
+-----------------------+
| inventory_in_stock(8) |
+-----------------------+
| 1 |
+-----------------------+
1 row in set (0.00 sec)