本章介绍DBMS支持何种函数,以及如何使用
1. 每一个DBMS都有特定的函数
2. 文本处理函数
(1)在上一章中已介绍了RTRIM()删除右边空格,LTRIM()删除左边空格,TRIM()删除两边空格
(2)UPPER()将文本转换为大写
SELECT vend_name, UPPER(vend_name) AS vend_name_upcase
FROM Vendors
ORDER BY vend_name;
(3)常用函数汇总
(4)表中的SOUNDEX需要进一步解释
SOUNDEX将任何文本串转化为描述其语音表示的字母数字模式的算法。
Microsoft Access和PostgreSQL不支持SOUNDEX()
例:某顾客姓名为:Michael Green,登记错误为Michelle Green,搜索正确名字得不到结果
SELECT cust_name, cust_contact
FROM Customers
WHERE SOUNDEX(cust_contact) = SOUNDEX('Michael Green');
3. 日期和时间处理函数
每种DBMS有独立的处理函数
在SQL Server中:
SELECT order_num
FROM Orders
WHERE DATEPART(yy, order_date) = 2004;在Access:
SELECT order_num
FROM Orders
WHERE DATEPART('yyyy', order_date) = 2004;
在PostgreSQL中:
SELECT order_num
FROM Orders
WHERE DATE_PART('year', order_date) = 2004;
在MySQL中:
SELECE order_num
FROM Orders
WHERE YEAR(order_date) = 2004;
在Oracle中:
SELECE order_num
FROM Orders
WHERE to_number(to_char(order_date, 'YY')) = 2004;
to_char()函数用来提取日期成分,to_number()函数用来将提取出的成分转换为数值
也可写为:
WHERE order_date BETWEEN to_date('01-JAN-2004') AND to_date('31-DEC-2004');to_date()函数将两个字符串转化为日期
4. 数值处理函数

被折叠的 条评论
为什么被折叠?



