(十一)函数查询

1. 聚合函数

  • 对一组值进行计算,得到一个返回值

  • SUM(), 求和

  • AVG(), 求平均

  • MIN(), 求最小

  • MAX(), 求最大

  • COUNT(), 计数,即个数

--例1 求所有学生的平均年龄
Select AVG(sage) AS 平均 FROM Student --求所有学生的最大、、最小、平均年龄和人数
Select MAX(sage) AS 最大, MIN(sage) AS 最小, AVG(Sage) AS 平均 ,COUNT(*) AS 人数
FROM Student --例3 求航天班所有学生的最大、最小、平均年龄和人数
Select MAX(sage) AS 最大, MIN(sage) AS 最小, AVG(Sage) AS 平均 ,COUNT(*) AS 人数
FROM Student
WHERE sclass = '航天'

2. 类型转换函数

  • CONVERT()

    • CONVERT(datatype, expression [, style])

    • datatype : 目标类型

    • expression : 表达式, 把这个表达式的值转换成 datatype 这种类型

    • [, style], datatype 是日期型时需要,style是日期的 格式代号

--格式转换函数

--例4 整数转字符串
SELECT CONVERT(varchar, ) --例5 实数转字符串
SELECT CONVERT(varchar, 120.12) --例6 字符串转换为整数
SELECT CONVERT(int, '') --例7 字符串转实数
SELECT CONVERT(decimal(, ), '3.14159') --例8 日期转换字符串
SELECT CONVERT(char, GETDATE()) --例9 日期转yy.mm.dd型字符串
SELECT CONVERT(char, getdate(), ) --例10 日期转yy/mm/dd型字符串
SELECT CONVERT(char, getdate(), ) --例11 字符串转日期
SELECT CONVERT(DATE, '') SELECT CONVERT(DATE, '2016/05/10') SELECT CONVERT(DATE, '2016-05-10') SELECT CONVERT(DATE, '5/10/2016')

2. 日期型函数

  • GETDATE() 获取当前日期和时间

    • SELECT GETDATE()
  • DATEADD() 给日期增加年、月、日或时间

    • DATEADD(part, number, date)
    • date : 日期
    • number : 数
    • part , 日期的哪部分
      • year, 年 ; month, 月; day, 日
      • hour , minute , second
  • DATEDIFF() 两个日期相减

    • DATEDIFF(part, date1, date2)

    • date2 和 date1 在part上 相减

    • part

      • year, 年 ; month, 月; day, 日

      • hour , minute , second

  • GETNAME(part, date) 获得date的part部分,已字符串返回

--例13 日期在某部分加

SELECT DATEADD(year, , '2010/5/10 10:10:10.100')
--年
select dateadd(year, , '2010/5/10 10:10:10.100')
--天
select dateadd(day, , '2010/5/10 10:10:10.100')
--秒
select dateadd(second, , '2010/5/10 10:10:10.100') --在表中出生日期加5
Select DateAdd(year, , sbirthday)
FROM Student --例14 日期在某部分减
Select DateDiff(year, '2010-1-1', '2016-1-1') Select DateDiff(year, sbirthday, GetDate())
From Student --例15 获得日期的一部分
Select DateName(month, GetDate()) --得到出生年
Select sno, sname, Sdept,
DateName(year, sbirthday) As 出生年份
From Student
WHERE Sdept = 'CS'

4. 数学函数

5. 字符串处理函数

SELECT *
FROM Student
Where rtrim(ltrim(Sdept)) = 'CS' -- 将CS前面和后面的空格都截取掉

SQL语句(十一)函数查询的更多相关文章

  1. 使用传入的总记录数实现一条sql语句完成分页查询

    使用传入的总记录数实现一条sql语句完成分页查询     问题:在传统的分页查询的实现中不可避免的需要两条sql语句,一条用于查询数据一条用于查询总记录数.如下面的实际代码所示: Img1 当然如果使 ...

  2. mongodb 跟踪SQL语句及慢查询收集

    有个需求:跟踪mongodb的SQL语句及慢查询收集 第一步:通过mongodb自带函数可以查看在一段时间内DML语句的运行次数. 在bin目录下面运行  ./mongostat -port 端口号  ...

  3. [转]在Excel中使用SQL语句实现精确查询

    本文转自:http://blog.sina.com.cn/s/blog_5fc375650102e1g5.html 今天在微博上看到@数据分析精选 分享的一篇文章,是关于<在Excel中使用SQ ...

  4. 在JDBC中实现SQL语句的模糊查询

    在JDBC中实现SQL语句的模糊查询 在大多数情况下我们可以在JDBC中写入sql语句通过占位符的方式来直接查询,但是如果要进行模糊查询,需要转义字符才能够正常查询. sql语句: select * ...

  5. SQL 语句常用函数

    一.字符转换函数 1.ASCII()返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错. 2.CH ...

  6. oracle 基础SQL语句 多表查询 子查询 分页查询 合并查询 分组查询 group by having order by

    select语句学习 . 创建表 create table user(user varchar2(20), id int); . 查看执行某条命令花费的时间 set timing on: . 查看表的 ...

  7. 第五篇、常用的SQL语句和函数介绍

    简介: 在使用到sqlite3的时候,常常需要写一些SQL语句,现将常用到的部分语句稍微总结以下,由于个人习惯,关键字用大写. 附: /*简单约束*/ CREATE TABLE IF NOT EXIS ...

  8. SQL语句:子查询

    一,子查询定义: 子查询就是嵌套在主查询中的查询. 子查询可以嵌套在主查询中所有位置,包括SELECT.FROM.WHERE.GROUP BY.HAVING.ORDER BY. 但并不是每个位置嵌套子 ...

  9. 【转载】Sqlserver的SQL语句实现分页查询

    在应用程序的开发中,如果数据库中的数据量过于的庞大,则需要针对查询数据做分页处理,取出对应分页中的数据,在Sqlserver分页的语句写法中,有两种比较常用,一种是数据表中含有自增量Id的情况,可以根 ...

  10. 厚溥教育1718部数据库连接作业答案,分装一个操作数据库而无需写SQL语句的函数

    <?php header("Content-type:text/html;charset=utf8"); //PHP操作数据库的函数 function phpsql($dbc ...

随机推荐

  1. 账户控制器(AccountController)

    账户控制器(AccountController) Account控制器提供了登录,注册,忘了密码和电子邮件激活页面功能. Layout模板视图 在Account视图文件夹中单独建设了模板文件: 登录页 ...

  2. Java中Class类详解、用法及泛化

    Java中Class类及用法 Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识,即所谓的RTTI.这项信息纪录了每个对象所属的类.虚拟机通常使用运行时类型信息选准正确方 ...

  3. 爬虫利器_you-get

    用Python做爬虫也很久了,今天分享一个轻巧的爬虫库:you-get you-get 是用 Python3写成的视频,图片,音频下载工具,堪称盗链,爬虫神器.其支持的网站,都是直接破解其算法,直接算 ...

  4. python程序出现No module named '_socket' 解决方法

    首先看一下这个错误,错误显示没有这个_socket这个模块 看一个简单的程序理解这个错误是怎么出现的 这个程序就是像浏览器发起请求发开一个链接然后关闭,一直循环,运行之后产生这个错误,产生这个错误的原 ...

  5. Unity Inspector添加自定义按钮(Button)

    在Unity开发游戏的时候,为了有一个更快更方便的工作流,我们往往会在Editor下开发一些方便实用的工具.在工具中,用到最多,最关键的就是按钮,它是工具的首席执行官.下面就用最简单的代码来演示添加一 ...

  6. eclipse中设置项目的编码方式

    1.windows->Preferences...打开"首选项"对话框,左侧导航树,导航到general->Workspace,右侧Text file encoding ...

  7. ctf入门常见类别

    原视频在这里:实验吧-名师指导http://www.shiyanbar.com/course-video/watch-video/cid/419/vid/2000网络安全从业者尝试介绍 web应用渗透 ...

  8. Linux读书笔记第三、四章

    第三章 主要内容: 进程和线程 进程的生命周期 进程的创建 进程的终止 1. 进程和线程 进程和线程是程序运行时状态,是动态变化的,进程和线程的管理操作(比如,创建,销毁等)都是有内核来实现的. Li ...

  9. 黄金分割点(第五周 c语言版)

    在上一周,学习其他课程的同时,用C语言编写了黄金分割点小游戏.因为要做界面需要mfc,当时学的时候还做了个简单的计算器.目前c++的知识忘的差不多了,所以就先用C语言来实现算法.打算接下来的一周复习c ...

  10. springboot项目的创建

    创建springboot项目 包名和项目名 选择需要使用的框架,web 然后再点击下一步,完成即可创建springboot项目