SQL必知必会(第四版)-8.使用数据处理函数

目录

8.1 函数

8.2 使用函数

8.2.1 文本处理函数

RTRIM()函数

UPPER()函数

常用的文本处理函数

SOUNDEX()

8.2.2 日期和时间处理函数

YEAR()

8.2.3 常用的数值处理函数


8.1 函数

与几乎所有DBMS都等同地支持SQL语句(如SELECT)不同,每一个DBMS都有特定的函数。事
实上,只有少数几个函数被所有主要的DBMS等同地支持。如:

可以看到,与SQL语句不一样,SQL函数不是可移植的。这表示为特定SQL实现编写的代码在其
他实现中可能不正常。

可移植(portable):所编写的代码可以在多个系统上运行。

因此,如果你决定使用函数,应该保证做好代码注释,以便以后你(或其他人)能确切地知道所编写的SQL代码的含义。

8.2 使用函数

8.2.1 文本处理函数

RTRIM()函数

去除列值右边的空格。

如:

因为数据格式可能是多个字符,而实际的数据只有少个字符,那么该数据右边就会有空格。比如,在没有使用RTRIM()函数之前,是这样的结果:

而使用了RTRIM()函数之后,输出为:

可见没有了空格。

与此类似的还有:
LTRIM()(去掉字符串左边的空格)以及TRIM()(去掉字符串左右两边的空格)

UPPER()函数

UPPER()将文本转换为大写。

常用的文本处理函数

SOUNDEX()

SOUNDEX是一个将任何文本串转换为描述其语音表示的字母数字模式的算法。SOUNDEX考虑了类似的发音字符和音节,使得能对字符串进行发音比较而不是字母比较。虽然SOUNDEX不是SQL概念,但多数DBMS都提供对SOUNDEX的支持。

下面给出一个使用SOUNDEX()函数的例子。

Customers表中有一个顾客Kids Place,其联系名为Michelle Green。但如果这是错误的输入,此联系名实际上应该是Michael Green,该怎么办呢?显然,按正确的联系名搜索不会返回数据,如下所示:

现在试一下使用SOUNDEX()函数进行搜索,它匹配所有发音类似于Michael Green的联系名:

8.2.2 日期和时间处理函数

日期和时间采用相应的数据类型存储在表中,每种DBMS都有自己的特殊形式。

且日期和时间函数在各种DBMS中很不一致,可移植性很差。

YEAR()

MySQL用户可使用名为YEAR()的函数从日期中提取年份:

8.2.3 常用的数值处理函数

在主要DBMS的函数中,数值函数是最一致、最统一的函数。

常用数值处理函数:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值