与其他大多数计算机语言一样,SQL支持利用函数来处理数据,函数一般是在数据上执行的,他给的数据的转换提供了方便
相对而言,多数的SQL是可移植的,但是在实现之间会有所差异,函数更是如此
几乎每种主要的DBMS的实现都支持其他实现不支持的函数,而且差异还很大,所以有些程序员不支持使用特殊函数功能
但是不总是利用应用程序的性能,会让某些应用程序代码很艰难,所以学会主要的通用函数是十分必要的
如果你决定使用函数应该保持做好代码注释,以便以后自己或者其他人能确切的知道所编写SQL的含义
全文阅读和自己动手熟练需要大概二十分钟左右,熟练运用到数据库代码中还得需要你自己不断地积累和使用,希望不会浪费读者宝贵的时间
大多数的SQL实现支持以下类型的函数
用于处理文本串,比如删除或填充值,转换值为大写或小写的文本函数
用于在数值数据上进行算术操作,如返回绝对值,进行代数运算的数值函数
用于处理日期和时间值并从这些值中提取有效成分,比如时间之差,检查日期有效的日期时间函数
返回DBMS正是用的特殊信息,如返回用户登录信息,检查版本细节的系统函数
下面是一个例子,我们先使用Upper()函数
正如我们看见的,Upper()将文本转换为大写,用法类似,下面是其他常用的文本处理函数
以下是列出了常用的日期和时间处理函数
AddDate(): 增加一个日期
AddTime(): 增加一个时间
CurDate(): 返回当前日期
CurTime(): 返回当前的时间
Date(): 返回日期时间的日期部分
DateDiff(): 计算两个日期之差
Date_Add(): 高度灵活的日期运算函数
Date_Format():返回格式化日期和运算函数
Day(): 放回一个日期的天数部分
DayOfWeek(): 对于一个日期返回对应的星期几
Hour(): 返回一个时间的小时部分
Minute(): 返回一个时间的分钟部分
Month(): 返回一个时间的月份部分
Now(): 返回当前的日期和时间
Second(): 返回一个时间的秒部分
Time(): 返回一个日期时间的时间部分
Year(): 返回一个日期的年份部分
提到时间就必须提到时间格式,日期格式的首选格式为yyyy-mm-dd,其他的两位年份格式也行,但是为了去除多义性是不推荐的
MySQL处理00-69为2000到2069,处理70-99为1970到1999,还有04/05/06你自己分不清是2006年5月4日还是2004年5月6日
当然日期操作还可以搭配函数和操作符进行筛选,而且有些函数是MySQL迭代出来的,查阅具体的文档可以确定使用那个函数
数值处理函数仅仅处理数值数据,这些函数主要用于代数、三角或几何运算,因此使用频率不是很高,下面列出一些常用的数据处理函数
本文介绍了如何使用SQL的数据处理函数,重点应该是日期处理函数,当然最好都是全部都掌握
当然除了这些每个DBMS不同的函数,汇集函数是每个SQL都有并用来汇总数据的函数,也是需要掌握的
文章如果存在问题或者有其他需要补充的函数,希望大佬斧正和评论,各自努力,你我最高处见
原文:https://www.cnblogs.com/bc-song/p/14494932.html