四种函数处理
- 文本函数
- 数值函数
- 时间函数
- 系统函数
文本函数
之前我们有用过rTrim()去掉右边多余的空格,这就是文本函数。其他的还有转换大小写Upper(),Lower()等
SELECT vend_name, Upper(vend_name) AS vend_name_upcase
FROM vendors;
还有一个有意思的函数 Soundex().拟声匹配。比如现在我们的customers表中有个顾客联系人叫Y Lee。我知道怎叫他,但不知道他的名字中的Lee是Lie还是Lee。这时就可以用拟声匹配来搜索。
SELECT cust_name, cust_contact
FROM customers
WHERE Soundex(cust_contact) = Soundex('Y.Lie');
| 函数 | 说明 |
|---|---|
| Trim() | 去掉串的左右两边多余的空格 |
| LTrim() | 去掉串左边的空格 |
| RTrim() | 去掉串右边的空格 |
| Upper() | 大写 |
| Lower() | 小写 |
| Soundex() | 拟声匹配 |
| Length() | 返回串的长度 |
| SubString() | 返回子串 |
| Left() | 返回串左边的字符 |
| Right() | 返回串右边的字符 |
| Locate() | 找出子串 |
时间函数
| 函数 | 说明 |
|---|---|
| CurDate() | 返回当前日期 |
| CurTime() | 返回当前时间 |
| Year() | 返回年部分 |
| Month() | 返回月部分 |
| Day() | 返回日部分 |
| Hour() | 返回小时部分 |
| Minute() | 返回分部分 |
| Second() | 返回秒部分 |
| Time() | 返回时间部分 |
| DayOfWeek() | 返回指定时期的星期数 |
| DateDiff() | 返回两个日期相差的天数 |
| Now() | 返回当前时间 |
今天是2017年2月14日,星期二
SELECT curdate(); #返回当前日期
SELECT day(curdate()); #返回当前日期的日数(号)
实例:我们先来看下orders表的情况
SELECT * FROM orders;
我们现在想要看下orders表中2005年9月下的所有订单,该怎么写呢?
SELECT cust_id, order_num
FROM orders
WHERE DATE(order_date) BETWEEN '2005-09-01' AND '2005-09-30';
或者
SELECT cust_id, order_num
FROM orders
WHERE Year(order_date) = '2005' AND Month(order_date) = '9';
数值函数
| 函数 | 说明 |
|---|---|
| abs() | 返回绝对值 |
| cos() | 返回余弦 |
| exp() | 返回指数 |
| mod() | 返回余数 |
| pi() | 返回圆周率 |
| rand() | 返回一个随机数 |
| sin() | 返回正弦 |
| sqrt() | 返回平方根 |
| tan() | 返回正切 |
可以做些简单的测试随便玩玩。

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



