当前位置: 首页 > news >正文

DML数据操作语言之常用函数

所谓函数,就是输入某一值,得到相应的输出结果的功能。相当于一个加工厂,给了原料,最终产出成品。

其中原料 就是参数(parameter). 产品 就是返回值。

函数大致可以分为以下五个种类:

算术函数

字符串函数

日期函数

转化函数

聚合函数

1.算术函数

最最最常用的 : +  —  *   /   没想到这也算是函数吧。

round函数:四舍五入。 round(m,n)  其中m是要处理的数值,n指定保留小数的位数。

                 假如n指定为2 ,则对数值m保留两位小数,对小数点后第三位进行四舍五入。

abs 函数 :绝对值。 abs(m)  其中m是要进行计算绝对值的数值。

                对是null的数值 运用abs函数,得到的结果依然是null。

mod函数 :求余。 mod(m,n)  其中m是要进行求余的数值即被除数,n是除数。得到的结果是余数。

                主流DBMS都支持mod函数,但是SQL Server数据库 使用“%”来替代mod函数。

2.字符串函数

|| 函数 : 拼接。 字符串1 || 字符串2  得到的结果是连接在一起的字符串。

              ||函数在SQL Server数据库中不能使用。SQL Server使用 “+” 来连接字符串。

              ||函数在MySQL数据库中不能使用。MySQL使用concat(str1,str2)函数来连接字符串。

length函数 : 字符串长度。 length(字符串) 得到的是该字符串的长度。

                    length函数在SQL  Server数据库中不能使用。SQL Server使用 len(字符串)函数来获得字符串长度。

lower函数 : 转化为小写。 lower函数只对英文字母组成的字符串有效。 lower(字符串)  得到小写的英文字符串。

upper函数 : 转化为大写。 upper函数只对英文字母组成的字符串有效。 upper(字符串)  得到大写的英文字符串。

replace函数 : 字符串替换。replace(str1,str2,str3)  其中 str1表示 对象字符串。 str2表示 要对对象字符串str1中的哪部分

                    字符串进行替换。str3表示要把str2表示的那部分字符串替换为哪部分字符串。

                    replace('woshiwangliyue','shi','jiao')    得到的字符串是  'wojiaowangliyue'

substring函数 : 字符串的截取。现在只有 PostgreSQL数据库 和 MySQL数据库支持这个函数的标准写法,如下:

                         substring(对象字符串  from  截取的起始位置  for  截取的字符数)  得到 截取到的字符串。字符串位置的索引从1开始。

                         Oracle数据库和DB2数据库 对上面的标准写法进行了简化:

                         substr(对象字符串,截取的起始位置,截取的字符数) 

                         SQL  Server数据库的写法如下:

                          substring(对象字符串,截取的起始位置,截取的字符数) 

3.日期函数

  日期函数有很多种,但是每个不同的数据库在实现这些函数时又略有不同。下面几种时标准SQL提供的函数

  current_date函数:得到该SQL语句执行时的日期。  无需参数,直接使用。   年份 月份 日

  current_time函数:得到该SQL语句执行时的时间。  无需参数,直接使用。   小时 分钟 秒

  current_timestamp函数:得到该SQL语句执行时日期和时间。 无需参数,直接使用。

  extract函数 :使用extract函数,可以截取出时间数据中的一部分,如‘年’,‘月’,‘日’,‘小时’,‘分’,‘秒’。

                      extract(时间元素  from  时间数据)     其中时间元素的常亮值 :year  month day  hour  minute second   

                       时间元素可以是传入的参数  也可使用 current_date    current_time    current_timestamp

4.转化函数

“转化”一词在SQL中主要有两层意思:一是数据类型的转化,一是值的转化。

 cast函数  :类型转化。     cast(值 as  想要转化成的数据类型)   

                                  cast('0001'  as  integer)     得到 integer类型的 1

                                  cast('2009-10-23' as date)  得到 date类型的  2009-10-23

coalesce函数 :将null转化为其他值。 将返回参数列表中第一个不是null的值。

                      coalesce(null , '1')   将得到  '1'

                      coalesce(null, null , 2014) 将得到 2014

5.聚合函数

在前面已经用到过,count函数 ,avg函数 ,min函数 ,max函数。

转载于:https://www.cnblogs.com/wangliyue/p/4178195.html

相关文章:

  • Oracle Dedicated server 和 Shared server(专用模式 和 共享模式) 说明(转)
  • 修改mysql的编码
  • (轉)JSON.stringify 语法实例讲解
  • FTP笔记
  • web应用程序使用jdbc连接rac数据库失败
  • 2761: [JLOI2011]不重复数字(哈希表)
  • 上市之后:曙光服务器“新规”
  • Fragment介绍(一)
  • (转)视频码率,帧率和分辨率的联系与区别
  • LVS-DR负载均衡模式的arp_announce和arp_ignore详解
  • 轻量级web富文本框——wangEditor使用手册(2)——扩展一个“缩进”功能 demo
  • nginx相关参考博客
  • Spring MVC中jquery ajax传递view
  • Unrecognized Windows Sockets error: 0: JVM_Bind异常
  • 怎样区分直连串口线和交叉串口线?
  • CSS盒模型深入
  • Fabric架构演变之路
  • git 常用命令
  • Java,console输出实时的转向GUI textbox
  • javascript数组去重/查找/插入/删除
  • Js基础知识(一) - 变量
  • Laravel 实践之路: 数据库迁移与数据填充
  • Less 日常用法
  • Linux下的乱码问题
  • Netty源码解析1-Buffer
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Rancher-k8s加速安装文档
  • Redis字符串类型内部编码剖析
  • SQLServer之索引简介
  • 分享一份非常强势的Android面试题
  • 高程读书笔记 第六章 面向对象程序设计
  • 入口文件开始,分析Vue源码实现
  • 入手阿里云新服务器的部署NODE
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 白色的风信子
  • k8s使用glusterfs实现动态持久化存储
  • Spring Batch JSON 支持
  • (3)选择元素——(17)练习(Exercises)
  • (30)数组元素和与数字和的绝对差
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (pojstep1.1.2)2654(直叙式模拟)
  • (一) storm的集群安装与配置
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .NET6实现破解Modbus poll点表配置文件
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .NET文档生成工具ADB使用图文教程
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • [ C++ ] 继承
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [AIGC] SQL中的数据添加和操作:数据类型介绍