MySQL聚合函数、控制流程函数(含navicat软件的介绍)

一、navicat的引入:(第三方可视化的客户端,方便MySQL数据库的管理和维护)

NavicatTM是一套快速、可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人 员及中小企业的需要。Navicat 是以直觉化的图形用户界面而建的,让你可以以安全并且简单的方式创建、组织、访问并共用信息。

Navicat 是闻名世界、广受全球各大企业、政府机构、教育机构所信赖,更是各界从业员每天必备的工作伙伴,被公认为全球最受欢迎的MySQL前端用户介面工具。它可 以用来对本机或远程的 MySQL、SQL Server、SQLite、Oracle 及 PostgreSQL 数据库进行管理及开发。

二、navicat的安装:

下载网站:http://www.navicat.com.cn/

下载所需要的版本即可。

安装之后,打开的界面如下:

我们可以在navicate的查询编辑器中输入命令,然后点击“运行”,查看结果:

二、常见聚合函数:(聚合即汇总的意思)

常见聚合函数如下:

  • 1、AVG:求平均值
  • 2、COUNT
  • 3、MIN / MAX
  • 4 SUM

我们拿下面的这张表举例:

1、AVG:求平均值

AVG ([DISTINCT] expr) 

解释:返回expr 的平均值。 DISTINCT 选项可用于返回 expr的不同值的平均值。

举例:查询年龄的平均值。命令及结果如下:

2、COUNT(expr):返回SELECT语句检索到的行的数目。

  • SELECT COUNT(*) FROM tab_teacher;   --返回检索行的数目,不论其是否包含NULL值;
  • SELECT COUNT(name) FROM tab_teacher;  --返回SELECT语句检索到的行中非NULL值的数目.

3、MIN/MAX:求最小、最大值。

4、SUM:求和

三、控制流程函数:

常见的控制流程函数如下:

  • CASE
  • IF
  • IFNULL
  • NULLIF

我们依旧用下面的这张表格来举例:

1、CASE:

CASE value WHEN [compare-value1] THEN result1 [WHEN [compare-value2] THEN result2 [ELSE result3] END 

解释:用value值来匹配,如果value1和value匹配,则返回result1 ,如果value2和value匹配,则返回result2,以此类推;否则,返回ELSE后的result3。;如果没有ELSE部分的值,则返回值为 NULL。这种句型类似于Java当中的switch···case···default···。

举例:

2、IF:

IF(expr1,expr2,expr3) 

解释:如果表达式expr1是TRUE ,则 IF()的返回值为expr2; 否则返回值则为 expr3。类似于三目运算符。

举例:

3、IFNULL:

IFNULL(expr1,expr2) 

解释:假如expr1不为NULL,则函数返回值为 expr1; 否则,如果如expr1为NULL,函数返回值为expr2。

举例:

4、NULLIF:

NULLIF(expr1,expr2)

解释:如果expr1 = expr2成立,那么返回值为NULL,否则返回值为expr1

举例:

MySQL聚合函数、控制流程函数(含navicat软件的介绍)的更多相关文章

  1. MySQL数据库学习笔记(四)----MySQL聚合函数、控制流程函数(含navicat软件的介绍)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  2. MySQL 聚合函数 控制流程函数

    常用的聚合函数 1. AVG() 求平均值 mysql> AVG([DISTINCT] expr) -- 返回 expr 的平均值 mysql> select AVG(age) from ...

  3. MySQL聚合函数、控制流程函数

    [正文] 一.navicat的引入:(第三方可视化的客户端,方便MySQL数据库的管理和维护) NavicatTM是一套快速.可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设 ...

  4. es6 中的generator函数控制流程

    Generator函数跟普通函数的写法有非常大的区别: 一是,function关键字与函数名之间有一个星号: 二是,函数体内部使用yield语句,定义不同的内部状态(yield在英语里的意思就是“产出 ...

  5. mysql控制流程函数(case,if,ifnull,nullif)

    1.case...when... 用法 参考:http://www.cnblogs.com/qlqwjy/p/7476533.html CASE value WHEN [compare-value] ...

  6. mysql控制流程函数

    1.case语句 select case 2 when 1 then '男' when 2 then '女' else 'xoap' end as result; 2.if语句 select if(1 ...

  7. 转MYSQL学习(三) 函数

    这一节主要介绍MYSQL里的函数,MYSQL里的函数很多,我这里主要介绍MYSQL里有而SQLSERVER没有的函数 数学函数 1.求余函数MOD(X,Y) MOD(X,Y)返回x被y除后的余数,MO ...

  8. 【存储过程】MySQL存储过程/存储过程与自定义函数的区别

    ---------------------------存储过程-------------------- 语法: 创建存储过程: CREATE [definer = {user|current_user ...

  9. MYSQL-----控制流程函数(case when...then..else..end)

    MySQL有一些内置的控制流程函数,可以在SQL语句中使用这些函数来更加准确和直接的结果. 第一种语法: case when [value] then result ................. ...

随机推荐

  1. 用 Asterisk 搭建自己的免费 VoIP 服务器

    原文 http://www.yaoblog.info/?p=5021 1. 这里以 Debian 为例子,安装 Asterisk apt-get update apt-get install aste ...

  2. [Oracle]TRIGGER

    题外话: Oracle 的使用. 以前客户方用的是SQL SERVER,一直在用SQL SERVER,感觉SQL SERVER的用户体验非常好. 不管是开发环境的界面布局到SQL 的写法上,感觉写起来 ...

  3. 关于WEB三层架构的思考

    1.MVC设计思想 MVC程序设计思想是眼下比較流行的WEB开发的模式,当中,M(model)是模型.即JavaBean,用来封装和保存数据:V(view)是视图,即JSP.用来显示内容:C(cont ...

  4. Maven项目红色叹号+JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java B

    昨天写的关于解决JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the ...

  5. C#.Net操作XML方法二

    上面那篇博客,在上面那面博客中是通过System.Xml命名空间中的类来实现对XML文件的创建.删除和改动等操作.接下来再介绍一种方法,在整个的操作过程中,仅仅只是换了个类而已,没什么大惊小怪的. D ...

  6. HTML+CSS - 前端设计的小技巧(持续更新......)

    2015年7月6日20:28:20 1.设置文字的居中,非控件内的. :text-alain:center 2.图片在ASP.NET中,可以直接拖放到界面,自动形成img控件. 3.CSS直接在全局样 ...

  7. 聊天气泡的绘制(圆角矩形+三角形+黑色边框,关键学会QPainter的draw函数就行了),注意每个QLabel都有自己的独立坐标

    头文件: #ifndef GLABEL_H #define GLABEL_H #include <QLabel> #include <QPainter> #include &l ...

  8. 理解javascript中的for语句

    程序实现中经常要用到循环语句,其中for循环是多数语言都有的.在javascript中,for循环有几种不同的使用情况,下面就分别来讲述我的理解. 第一种:(通常情况,循环执行相关操作) var ob ...

  9. socket为send和recv设置超时时间

    linux和windows下用setsockopt设置SO_SNDTIMEO,SO_RCVTIMEO的参数的一点区别 UDP的socket在某些情况:如对方关闭时,本地可能sendto不出去数据,然后 ...

  10. javascript面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)

    面向对象可以把程序中的关键模块都视为对象,而模块拥有属性及方法.这样我们如果把一些属性及方法封装起来,日后使用将非常方便,也可以避免繁琐重复的工作.接下来将为大家讲解在JS中面向对象的实现.   工厂 ...