MySQL学习笔记(4)——查询字段计算处理

一、计算字段

1、Concat() 拼接字段

把多个串链接起来形成一个较长的串,需要一个或多个指定的串,各个串之间用逗号隔开。

例如:SELECT Concat(vend_name,'(',vend_country,')') FROM vendors;

2、去掉返回的值中的空格 RTrim()、LTrim()、Trim()

(a) RTrim()去掉右侧多余的空格来整理数据。

(b) LTrim()去掉左侧多余的空格来整理数据。

(c) Trim()去掉左右两边多余的空格来整理数据。

3、执行算数运算(MySQL支持加减乘除运算和圆括号改变运算优先级)

计算字段另一个用途就是对检索出的数据进行算术计算。

例如:SELECT prod_id, quantity, item_price, quantity * item_price AS expanded_price FROM orderitems WHERE order_num = 20005;

二、事件处理函数

函数一般是在数据上执行的,它给数据的转换和处理提供了方便。大多数SQL实现支持用于处理1)文本串的函数、2)用于在数值数据上进行算术运算操作的函数、3)用于处理日期和时间并提取特定成分的日期和时间函数、4)返回DBMS正使用的特殊信息的函数

1、常见的文本处理函数

Upper(str):将文本str转换为大写。

例:SELECT Upper(vend_name) AS vend_name_upcase FROM vendors;

Left(str, len):返回串str左边的len个字符。

例:SELECT Left(vend_name, 3) AS vend_name_upcase FROM vendors;

Length(str):返回串str的长度。

例:SELECT Length(vend_name) AS vend_name_upcase FROM vendors;

Locate(substr, str):返回串str的一个substr子串的第一个字符出现的位置,如果substr不再str中则返回0。该函数的另一个版本是Locate(substr,str,pos),表示从pos位置开始在str中寻找substr。

例:SELECT Locate('ACM', vend_name) FROM vendors;

2)用于在数值数据上进行算术运算操作的函数

Abs():返回一个数的绝对值

Cos():返回一个角度的余弦

Exp():返回一个数的指数值

Mod():返回除操作的余数

Pi():返回圆周率

Rand():返回一个随机数

Sin():返回一个角度的正弦

Sqrt():返回一个数的平方根

Tan():返回一个角度的正切

3)用于处理日期和时间并提取特定成分的日期和时间函数

AddDate():增加一个日期(天、周等)

AddTime():增加一个时间(时、分等)

CurDate():返回当前日期

CurTime():返回当前时间

Date():返回日期时间的日期部分

DateDiff():计算两个日期之差

Date_Add():高度灵活的日期运算函数

Date_Format():返回一个格式化的日期或时间串

Day():返回一个日期的天数部分

DayOfWeek():对于一个日期,返回对应的星期几

Hour():返回一个时间的小时部分

Minute():返回一个时间的分钟部分

Month():返回一个日期的月份部分

Now():返回当前日期和时间

Second():返回一个时间的秒部分

Time():返回一个日期时间的时间部分

Year():返回一个日期的年份部分


三、聚集函数:

运行在行组上,计算和返回单个值的函数(需要汇总数据而不需要检索出来)

ACG(column):返回某列的平均值。

MIN(column):返回某列的最小值。

MAX(column):返回某列的最大值。

SUM(column):返回某列的和。

DISTINCT:只包含不同值

COUNT(column):返回某列的行数,COUNT(*):返回所有列的和。

使用COUNT(*)对表中行的数目进行计数,不管表列中包含的是空值(NULL)还是非空值。使用COUNT(column)对特定列中具有值的行进行计数,忽略NULL值。

你可能感兴趣的:(MySQL学习笔记(4)——查询字段计算处理)