typora-copy-images-to: SQL 必知必会
SQL 必知必会 Chapter 8 使用函数处理数据
8.1 函数
-
注意:MySQL使用的是SUBSTRING、CONVERT、CURDATE()
-
如果使用函数,不一定是可移植的,不使用函数,编写的应用程序代码会很艰难
-
做好代码的注释,如果使用函数的话
8.2 使用函数
-
大多SQL实现支持以下类型的函数
- 用于处理文本字符串(如删除或填充值,转换值为大写或小写)的文
本函数 - 用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的
数值函数 - 用于处理日期和时间值并从这些值中提取特定成分(如返回两个日期
之差,检查日期有效性)的日期和时间函数 - 返回 DBMS正使用的特殊信息(如返回用户登录信息)的系统函数
- 用于处理文本字符串(如删除或填充值,转换值为大写或小写)的文
-
文本函数除了RTRIM(),还有UPPER
SELECT vend_name, UPPER(vend_name) AS vend_name_upcase
FROM Vendors
ORDER BY vend_name;
- SOUNDEX 的进一步解释
SELECT cust_name, cust_contact
FROM Customers
WHERE SOUNDEX(cust_contact) = SOUNDEX('Michael Green');
# 匹配所有发音类似于Michael Green 的联系名
- 日期和时间处理函数,很不一致,可移植性最差
# Orders 表中包含的订单都带有订单日期。检索 2012年的所有订单
SELECT order_num
FROM Orders
WHERE YEAR(order_date) = 2012;
- 数值处理函数
8.3 小结
- 介绍了如何使用 SQL的数据处理函数。虽然这些函数在格式化、处理和过滤数据中非常有用,但它们在各种 SQL实现中很不一致(SQL Server和 Oracle之间的差异说明了这一点)