数据库中的常用函数.ppt

上传人:wuy****n92 文档编号:80504486 上传时间:2023-03-23 格式:PPT 页数:12 大小:316KB
返回 下载 相关 举报
数据库中的常用函数.ppt_第1页
第1页 / 共12页
数据库中的常用函数.ppt_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《数据库中的常用函数.ppt》由会员分享,可在线阅读,更多相关《数据库中的常用函数.ppt(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第10章 数据类型的处理重点内容:数字类型处理 字符串类型处理 时间类型处理 类型转换一、数字1、算术运算和数学函数 所有类型的数字字段存储的数据都具有相同的基本类型,就是数字。算术运算是我们对数字类型数据的常见处理方式,而最基本的算术运算是我们使用基本的算术运算符,比如“+”、“-”、“*”、“/”等进行的数学运算。大部分的算术运算我们大家都已经很熟悉了,对一些较复杂的具体的问题还有现成的数学公式可以查阅使用,有了这些,我们就能够针对某个要处理的问题,列出所需的算术表达式来。在数据库系统中,许多基本的算术运算已经被作为数学函数整理出来,用户不再需要自己建立复杂而具体的算术式,只需要调用这些数

2、学函数,将需要进行计算的数据作为函数的参数输入,就可以直接得到答案。数学函数也可以使用在算术表达式中,大大简化了我们的算术运算。一、数字2、对数字排序 数字的顺序排列是指从小到大的排列,数字的逆序排列则是从大到小的排列。在操作数据库时,我们经常要将操作得到的结果,即数据记录集中的数据进行排序,以方便我们对结果进行观察。在依据数字数据类型的列对数据记录集进行排序时,记录就根据该列数值的数字顺序进行排列。3、处理空值 空值就是没有值或者说是它是一个未知的值,它不等于数字0,一个字段存有NULL值,意味着该字段实际上并没有存储任何值。如果空值出现在一个数学表达式中,这个表达式的结果也将是空值,因为系

3、统无法将一个未知的值在数学表达式中进行计算,该表达式的结果也就未知,或者说是不存在。有时,数据库系统能在查询和执行SQL语句时,对空值做出假设,以便包含空值的数学表达式能够返回一个非空值。不同的数据库系统用真值替换空值的方法是不同的。在SQL标准中指定可以使用COALESCE()函数替换空值。在Oracle数据库中使用的同样功能的函数是NVL()函数,它是Oracle版的COALESCE。一、数字4、格式化数字 很多数据库中存储的用于计算的数字都要求保留很高的精确度,以保证计算结果的精确性。为此,多数数据库系统都支持非常长的数字数据类型。例如,在Oracle8中的NUMBER数据类型就支持多达

4、40个数字长度的数字数据。但是在数据库产生数据报告向用户显示数字数据时,很多时候没有必要显示那么长的数字,所以在很多情况下我们需要使用一些函数来格式化数字数据,这些函数有ROUND()函数和TRUNC()。二、字符串1、字符串函数 各种SQL工具都支持多种字符串函数以方便对数据库中存储的大量的字符串数据进行处理。这些函数在不同的数据库可能有着不同的函数名称,例如,在Oracle数据库系统中,返回字符串长度的函数是LENGTH(),在Transact-SQL(Sybase数据库系统和Microsoft SQL Server数据库系统使用)中,返回字符串长度的函数则是CHAR_LENGTH()。二

5、、字符串2、字符串运算 字符串的运算包括字符串的比较、排序和字符串的并置以及字符串函数所能实现的所有运算的类型,还有关于子串的各种运算。(1)字符串的并置 使用函数CONCAT(str1,str2)可将两个或多个字符串作为一个单独的字符串对象来处理。所有的数据库系统都提供了字符串并置运算符,在Oracle数据库系统中,使用符号“|”来并置字符串,而在Transact-SQL(Sybase数据库系统和Microsoft SQL Server数据库系统使用)中,使用“+”来并置字符串。(2)使用探测法进行字符串比较 某些数据库支持探测法进行字符串的比较,如Oracle和Transact-SQL。探

6、测法是基于字符串的发音的一种字符串的比较方法。我们使用函数SOUNDEX()来进行这种操作。SOUNDEX()函数按照发音来分解单词,然后根据发音来比较字符串而不是根据实际的字符。二、字符串3、子字符串 判定某个字符串是否包含了另一个字符串就是有关子字符串的问题了。被检查的字符串叫主串,要查找的字符串就是子串。绝大多数的关系数据库系统都提供了一些方法来检查某一个字符串是否包含了另一个字符串,即主串和子串的关系。三、时间1、日期时间的存储和显示 在ANSI/SQL标准中,3种存储日期和时间的数据类型的格式和范围如下:数据类型 格式 范围 DATE YYYY-MM-DD 0001-01-01 TO

7、 9999-12-31TIME HH:MI:SS.nn 00:00:00 TO 23:59:61.999TIMESTAMP YYYY-MM-DD HH:MI:SS.nn 0001-01-01 00:00:00 TO 9999-12-31 23:59:61.999 由于很多国家对时间的表达习惯不同,使数据库系统中所使用的日期和时间的存由于很多国家对时间的表达习惯不同,使数据库系统中所使用的日期和时间的存储和显示方法都可以变化。例如美国习惯用储和显示方法都可以变化。例如美国习惯用month/day/yearmonth/day/year的格式来表示日期,用的格式来表示日期,用hour:minute

8、am/pmhour:minute am/pm的格式来表示时间,例如的格式来表示时间,例如10/1/200010/1/2000,5:27 pm5:27 pm。每个数据库系统中。每个数据库系统中都有其默认的日期和时间格式,由于不同时间表达习惯的存在,针对不同的用户习惯都有其默认的日期和时间格式,由于不同时间表达习惯的存在,针对不同的用户习惯或者要求,数据库可能需要在显示日期数据之前执行一些对数据的格式化处理。同样,或者要求,数据库可能需要在显示日期数据之前执行一些对数据的格式化处理。同样,对这些用户输入的时间日期数据值,数据库也需要进行相反的格式化处理,转化为系对这些用户输入的时间日期数据值,数据

9、库也需要进行相反的格式化处理,转化为系统默认的存储格式。我们可以使用数据库系统中的一些时间函数来完成这些格式化操统默认的存储格式。我们可以使用数据库系统中的一些时间函数来完成这些格式化操作。作。OracleOracle数据库系统提供了数据库系统提供了TO_CHAR()TO_CHAR()和和TO_DATE()TO_DATE()函数来完成时间日期数据格式的函数来完成时间日期数据格式的转换,其它数据库系统也有类似的函数,例如,在转换,其它数据库系统也有类似的函数,例如,在Transact-SQLTransact-SQL中,我们可以使用通中,我们可以使用通用的数据转换函数用的数据转换函数CONVERT

10、()CONVERT()函数。函数。三、时间2、日期时间函数 SQL语句中存在日期时间数据类型的数值,就有相应的日期时间函数来对其进行数据处理。这些日期时间函数在不同的数据库可能有着不同的函数名称,所以在使用这些函数前一定要先查阅当前使用的数据库系统的文档资料。三、时间3、日期时间的算法 日期时间数据的运算类型不多,包括日期时间的比较、加减日期时间、格式化时间值等。但是日期时间的运算在某种程度上是比数字和字符串更复杂一些的,因为,在不同的数据库系统中,对日期时间的处理方法并不一样。例如,Oracle只能提供DATE一种时间日期类型,而Transact-SQL则可以提供大量的类型。另外,在不同的数

11、据库系统中,对时间日期进行格式化和其它处理的函数也会有很大的差别,通常会完全不同。四、类型转换3、日期时间的算法 如果出现了所列出的类型不匹配的情况,只需要将其中的一些数据进行类型转换就可以让SQL语句正常运行了。在介绍时间类型数据的小节中,已经接触了几种转换函数:TO_CHAR()、Oracle中的TO_DATE()和通用转换函数CONVERT()。这里简单介绍SQL标准中的三个转换函数:CONVERT()、TO_CHAR()和TO_NUMBER()函数。CONVERT()CONVERT()该函数是通用的转换函数,可以进行多种数据类型间的转换。该函数是通用的转换函数,可以进行多种数据类型间的转换。CONVERTCONVERT()()使用三个参数:目标数据类型、被转换的表达式和数据的输出类使用三个参数:目标数据类型、被转换的表达式和数据的输出类型型(该数据要转换成字符串类型的时候使用该数据要转换成字符串类型的时候使用)TO_CHAR()TO_CHAR()该函数可以将其它类型的数据转换成字符串该函数可以将其它类型的数据转换成字符串 TO_NUMBER()TO_NUMBER()该函数可以将其它类型的数据转换为数字类型该函数可以将其它类型的数据转换为数字类型 本章小结:掌握数字类型数据的处理方法掌握字符串类型数据的处理方法掌握时间类型数据的处理方法

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁