必知必会-第十一章

2018-01-17  本文已影响9人  转身丶即天涯

使用数据处理函数

本章记录常用的mysql函数。

函数

与大多数编程语言一样,sql也支持函数来处理数据。就像上一章中的RTrim()函数。

关于可移植性:能运行在多个系统上的代码称为可移植的,虽然多数sql语言都是可以移植的,但是函数的移植性并不强,所以如果还不确定使用何种数据库的情况下,最好还是使用sql语句,尽量避免函数,因为各个DBMS的所支持的函数差异很大。当然函数会给我们带来便捷,为了以后考虑,在使用函数的地方注释尽量详尽一些。

使用函数

大多数SQL会支持以下类型的函数:

文本处理函数

比如我想让adress的所有值都是大写,可以用Upper()函数。


image.png

可以看到address列中的值都编程了大写,还可以优化一下,比如给这个大写的列取一个别名,方便调用。


image.png
取别名是一个好习惯,建议新生成一个列之后都取一个名字,方便调用。

书上列出的常见的文本处理函数如下:


image.png
image.png

我们选取几个常用的进行练习。

image.png

上图是官方API给出的解释。试着读一下。
locate()函数有两种重载形态,locate(substr, str), locate(substr, str, pos)
在看一下函数的解释,“第一个函数返回substr在str中第一次出现的位置,第二个函数返回str中substr第一次出现的位置,从pos位置开始搜索。如果str中没有substr子串则返回0。如果str或者substr为空,返回NULL”。


image.png
image.png

请看一下这两张图片中的第一条数据,当使用locate(substr, str, pos)函数时,pos设置的起始搜索位置是15,也就是从第15个字符开始往后搜索,发现没有匹配的值了,所以返回了0。

日期和时间处理函数

书中列出了如下的常用方法:


image.png
注意:在mysql中推荐的日期写法是,yyyy-mm-dd,虽然mysql支持两位数的年份,但是为了消除歧义应该使用四位数的年份,比如2018-01-12。

选取其中常用的进行测试练习:

在查询中经常按照日期进行查询,所以可以用Date()函数筛选。


image.png

实际情况也会只需要时间,那么就可以使用Time()函数。


image.png

按照时间查询也是同理的。


image.png
数值处理函数

一般进行数学运算,反正我工作中基本没用过,但是还有瞅一眼,给大脑留个印象。


image.png

总结一下,这样讲述的函数比较多,但是常用的就那么几个,用的6了即可,剩下不常用的不会?看官方API,写的十分清楚而且还有示例,再次传送mysql 官方API

第十一章,OK。

上一篇 下一篇

猜你喜欢

热点阅读