MySQL基本操作(二)函数

MySQL函数

1、文本处理函数

Left()                       返回串左边的字符
Right()                      返回串右边的字符
Length()                     返回串的长度
Locate()                     找出串的一个子串
Lower()                      将串转换为小写
Upper()                      将串转换为大写
LTrim()                      去掉串左边的空格
RTrim()                      去掉串右边的空格
Trim()                       去掉串两边的空格
Soundex()                    返回串的同音值
Substring()                  返回子串的字符
SELECT1,Upper(列2AS 列名 FROM 表名 # Upper将文本转化成大写字母

SELECT cust_name,cust_contact 
FROM customers
WHERE Soundex(cust_contact)= Soundex('Y.lie'); # Soundex返回Y.lie的同音值

2、日期和时间处理函数

注:无论是插入表、更新表还是WHEREguol查询等,MySQL中日期格式保持 “yyyy-mm-dd”,消除歧义。

AddDate(date,Interval n type)           增加一个日期(天,周等)
AddDate(date,days)                      增加days天
AddTime(date,second)                    增加一个时间(时,分等)
SubDate(date,Interval n type)           减少一个日期(天,周等)
CurDate()                               返回当前日期
CurTime()                               返回当前时间
Date()                                  返回日期时间的日期部分
DateDiff()                              计算两个日期之差
Date_Add()                              高度灵活的日期计算函数
Date_Format()                           返回一个格式化的日期或时间串
Day()                                   返回日期的天数部分
DayOfWeek()                             返回日期对应星期几
Month()                                 返回日期的月份部分
Year()                                  返回日期的年份部分
Now()                                   返回当前日期和时间
Time()                                  返回日期和时间的时间部分
Hour()                                  返回时间的小时部分
Minute()                                返回时间的分钟部分
Second()                                返回时间的秒部分
SELECT cust_id,order_num
FROM orders
WHERE Year(order_date)=2005 AND Month(order_date)=9;

--检索出2005年9月份下的所有订单

SELECT cust_id,order_num
FROM orders
WHERE Date(order_date) BETWEEN '2005-09-01' AND '2005-09-30'; 

3、数值处理函数

Abs()                                  返回一个数绝对值
Cos()                                  返回一个角度余弦
Exp()                                  返回一个数的指数
Mod()                                  返回除操作的余数
Pi()                                   返回圆周率
Rand()                                 返回一个随机数
Sin()                                  返回一个角度的正弦
Sqrt()                                 返回一个数的平方根
Tan()                                  返回一个角度的正切

4、聚集函数

AVG()                                  返回某列平均值
COUNT()                                返回某列行数
MAX()                                  返回某列最大值
MIN()                                  返回某列最小值
SUM()                                  返回某列之和
SELECT AVG (DISTINCT prod_price) AS avg_price FROM products;

AVG() 只能用来确定特定数值列的平均值,若想获得多列平均值,需使用多个AVG()函数;
DISTINCT去重,只能用于指定列名,不能用于*、计算或表达式。

SELECT COUNT (*) AS num_cust FROM customers;
SELECT COUNT (cust_email) AS num_cust FROM customers;

COUNT(*) 对表中行数目进行计数,包含空值(NULL);
COUNT(列名) 对表中行数目进行计数,不包含指定列的空值(NULL)。

SELECT MAX(prod_price) AS max_price FROM products;

MAX()、MIN() 要求指定列名,忽略列值为NULL的行;
MAX()在用于文本数据时,返回排序后的最后一行,MIN()返回排序后的最前面一行。

SELECT SUM(item_price*quantity) AS total_price
FROM orderitems
WHERE order_num=2005;

SUM()函数忽略列值为NULL的行。

利用标准的算术操作符,所有聚集函数都可用来执行多个列上的计算。
DISTINCT去重,只能用于指定列名,不能用于*、计算或表达式。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值