《mysql必知必会》读书实战笔记11-用函数处理数据

第11章 使用数据处理函数


1、函数

函数通常没有sql可移植性强,故使用函数时,注意做好代码注释,方便以后或他人理解语句。

2、使用函数

常用函数分类:

文本函数:处理文本串(增删文本,转换大小写,字串比较)

数值函数:处理数值(返回绝对值,代数运算)

日期时间函数:处理日期、时间,或提前特定成分(返回两个日期的差,检查日期有效性)

系统信息函数:返回数据库的特殊信息(返回用户登陆信息,检查版本信息)

2.1文本处理函数

2.1.1大小写转换:

Upper()  #转换为大写

Lower()  #转换为小写

将供应商名称转换为大写:select vend_name,upper(vend_name) as vend_name_upcase from vendors order by vend_name;

《mysql必知必会》读书实战笔记11-用函数处理数据_第1张图片

2.1.2截取字符串

a、从左开始截取字符串
left(str, length)
说明:left(被截取字段,截取长度)

《mysql必知必会》读书实战笔记11-用函数处理数据_第2张图片

b、从右开始截取字符串
right(str, length)
说明:right(被截取字段,截取长度)

《mysql必知必会》读书实战笔记11-用函数处理数据_第3张图片

c、截取字符串

substring(str, pos)

substring(str, pos, length)

说明:substring(被截取字段,从第几位开始截取)

           substring(被截取字段,从第几位开始截取,截取长度)

《mysql必知必会》读书实战笔记11-用函数处理数据_第4张图片
《mysql必知必会》读书实战笔记11-用函数处理数据_第5张图片

2.1.3截取空格

Ltrim(m)  #去掉串m左侧空格
Rtrim(m)  #去掉串m右侧空格

2.1.4返回长度、位置信息

length(m)  #返回串m的长度

《mysql必知必会》读书实战笔记11-用函数处理数据_第6张图片

locate(n,m)    #查找子串n在字串m中首次出现的位置,从第1位字符开始,没有的话返回0
locate(n,m,p) #查找子串n在字串m中首次出现的位置,从第p位字符开始,没有的话返回0

《mysql必知必会》读书实战笔记11-用函数处理数据_第7张图片
《mysql必知必会》读书实战笔记11-用函数处理数据_第8张图片

2.2日期和时间处理函数

一般应用程序中显示的日期和时间格式,和数据库中特殊的存储格式不同,所以用日期时间函数来处理、读取很重要。

应用程序中通常格式为,
日期:yyyy-mm-dd
时间:hh:mm:ss

数据库通常存储格式为日期和时间在一个字段中:
yyyy-mm-dd hh:mm:ss

常用日期和时间函数:

《mysql必知必会》读书实战笔记11-用函数处理数据_第9张图片

例:找出订货日期为2005年9月1日的订单号和客户id:select cust_id,order_num from orders where date(order_date)='2005-09-01';

《mysql必知必会》读书实战笔记11-用函数处理数据_第10张图片

找出2005年9月的所有订单号和客户id:select cust_id,order_num from orders where year(order_date)=2005 and month(order_date)=9;

《mysql必知必会》读书实战笔记11-用函数处理数据_第11张图片

2.3数值处理函数

数值处理函数,是进行代数、三角、几何运算的函数。在各种品牌数据库中比较一致。

《mysql必知必会》读书实战笔记11-用函数处理数据_第12张图片


《mysql必知必会》是一本好书,是一本sql语言入门书,豆瓣评分很高。

作者是英国的Ben Forta,世界知名的技术作家,由人民邮电出版社发行,我觉得原作名: MySQL Crash Course,直译为:《MYSQL速成》更具畅销书潜质,只是比较俗吧,呵呵。

书中从介绍简单的数据检索开始,逐步深入一些复杂的内容,包括联结的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、触发器、表约束,等等。

前三章是基础概念,讲了SQL和数据库的基本概念,Mysql数据库的概念和使用方法,第四章开始SQL实操练习,这里是本书的一些实操练习笔记,有兴趣的话可以按这个练习几遍,相信对新手会很有帮助,让你不经意间功力大增。

你可能感兴趣的:(《mysql必知必会》读书实战笔记11-用函数处理数据)