MySQL之使用数据处理函数
1 文本处理函数:
SELECT vend_name, Upper(vend_name) AS vend_upcase FROM vendors ORDER BY vend_name;
- 1
本例子中vend_name出现了两次是为了存储值,第二次是作为列(vend_name_upcase)转换为大写。
这里 vend_name 在原始列中本身是小写的,现在由于我们使用了文本函数的原因,他将变成大写。
这里列出常用的文本处理函数:
函数 | 说明 |
---|---|
Left() | 返回串左边的字符 |
Length() | 返回串的长度 |
Locate() | 找出串的一个字串 |
Lower() | 将串转换为小写 |
LTrim() | 去掉串左边的空格 |
Right() | 去掉串右边的字符 |
RTrim() | 去掉串右边的空格 |
Soundex() | 返回串的SOUNDEX值(自行百度) |
SubString() | 返回字串的字符 |
Upper() | 将串转换为大写 |
这里SOUNDEX需要做进一步解释:SOUNDEX是将任何文本串转换为描述其语音表示的模式算法,SOUNDEX考虑了类似的发音字符和音节。
举个例子吧:
有个顾客的联系名为Y.Lee,但这是输入错误,此时应该联系Y.Lie才对,那我们该怎么办呢?
SELECT cust_name, cust_contact FROM customers WHERE Soundex(cust_contact) = Soundex(‘Y.Lie’);
这样就能检索出Y.Lee出来了。
2 日期和时间处理函数:
一般来说,应用程序不适用用来存储日期和时间的格式,因此日期和时间函数总是被用来读取、统计和处理这些值。由于这个原因,日期和时间处理函数格外重要!
函数 | 说明 |
---|---|
AddDate() | 增加一个日期(天、周等) |
AddTime() | 增加一个时间(时、分等) |
CurDate() | 返回当前日期 |
CurTime() | 返回当前时间 |
Date() | 返回日期时间的日期部分 |
DateDiff() | 计算两个日期之差 |
Date_Add() | 高度灵活的日期运算函数 |
Date_Format() | 返回一个格式化的日期或时间串 |
Day() | 返回一个日日期的天数部分 |
DayOfWeek() | 对于一个日期,返回对应的星期几 |
Hour() | 返回一个时间的小时部分 |
Minute() | 返回一个时间的分钟部分 |
Month() | 返回一个日期的月部分 |
Now() | 返回点当前的日期和时间 |
Second() | 返回一个时间的秒部分 |
Time | 返回一个日期时间的时间部分 |
Year() | 饭不会一个日期的年部分 |
我们一定要注意MySQL的日期格式,无论什么时候制定一个日期,必须完成格式yyyy-mm-dd 比如 2005-09-04 。
还有,请遵行一个好的习惯,如果是日期,请使用Date():
SELECT cust_id, order_num FROM orders WHERE Date(order_date) = '2005-09-01';
但是如果是时间,也可以使用Time()。
3 数值处理函数:
Abs() 返回一个数的绝对值;
Cos() 返回一个角度的余弦
Sin() 返回一个角度的正弦
Tan() 返回一个角度的正切
Exp() 返回一个数的指数值
Mod() 返回除操作的余数
Pi() 返回圆周率
Rand() 返回一个随机数
Sqrt() 返回一个数的平方根
还没有评论,来说两句吧...