1.条件查询

条件查询需要用到where语句,where必须放到from语句表的后面

执行顺序:先from后where过滤后再检索出来

2.数据排序,asc(升序),desc(降序)默认情况下是asc

单一字段排序:

多个字段排序:(相当于先把第一个字段进行排序,然后再把第一个字段重复的部分再用第二个字段排序)

3.数据处理函数

A.将某个字段转换为小写,lower(字段名)

B.将某个字段转换为大写,upper(字段名)

C.截取字符串,substr(被截取的字符串,起始下标,截取的长度)--注:起始下标从1开始

D.取指定字段的长度,length(字段名)

E.去除前后空格,trim(字段名)

F.整数部分四舍五入,round(字段名)或round(字段名,0)

          

整数部分四舍五入,round(字段名,小数部分要保留的位数)

   

G.生成随机数,rand();--0-1之间的随机小数

   

H.匹配操作,case...when...then...else...end

eg:匹配工作岗位,当为MANAGER时,薪水上调10%,当为SALESMAN时,薪水上调50%,其他岗位薪水不变

I.将某个字段的null值转换成具体值,ifnull(字段名,转换后的值);--null参与运算后获得的值还是null

   

J.将字符串转换成日期,str_to_date(日期字符串,'日期格式');

这里的hiredate是date类型

K.将date类型转换成特定格式的字符串,date_format(日期类型数据,‘日期格式’);

    

这里初始的hiredate是date类型

4.分组函数/聚合函数/多行处理函数

1.什么是单行处理函数?什么是多行处理函数?

单行处理函数是一行输入对应一行输出

多行处理函数是多行输入对应一行输出

2.分组函数自动忽略空值,不需要手动增加where条件排除空值;分组函数不能直接使用在where关键字后面。

尤其在使用count时要注意,它会忽略空值。

5.去除重复记录,distinct

    

6.分组查询,group by

eg:找出每个工作岗位的最高薪水(分组函数跟group by的混合使用)

  

  

注意:如果使用了order by,order by必须放到group by后面

7.对分组之后的数据进行过滤,group by ... having...(两者必须一起使用)

where与having配合group by使用的区别?

答:where放在group by之前,用来对分组之前的数据进行过滤;

having放在group by之后,用来对分组之后的数据进行过滤;

8.关于select语句的总结

六、mysql语法的更多相关文章

  1. 学习mysql语法--基础篇(二)

      前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: [SQL语句的组成]   DML ...

  2. mysql进阶(二十六)MySQL 索引类型(初学者必看)

    mysql进阶(二十六)MySQL 索引类型(初学者必看)   索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型.   在数 ...

  3. MYSQL 语法大全自己总结的

    mysql语法大全 --------数据链接---------------------数据库服务启动net start mysql --关闭服务net stop mysql --登录 -u,-p后面不 ...

  4. 学习mysql语法--基础篇(一)

      前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分:    一.创建用户,创建数据库,给 ...

  5. mysql语法之case when then与列转行

    mysql语法中case when then与列转行的使用场景非常丰富. case语句类似java中条件分支语句的作用,可以类比java中的switch语句或者if语句来学习. 其语法如下: case ...

  6. mongo 与 传统mysql语法对比

    MongoDB语法                                  MySql语法 db.test.find({'name':'foobar'})<==> select ...

  7. Mongodb与mysql语法比较

    Mongodb与mysql语法比较   mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由 ...

  8. mongodb linux基本启动 基础增删改 mysql语法的对比

    一.主流数据源类型 还存在自定义数据源以及REST接口数据,共6中数据源. 二.linux下启动连接数据库 进去mongodb的目录启动服务:mongo --host 192.168.320.826 ...

  9. MySQL语法基础

    一.通用语法 1.MySQL数据库的SQL语句不区分大小写 2.可以用/**/完成注释 3.常用数据类型 类型 描述 int 整型 double 浮点型 varchar 字符串型 date 日期类型, ...

随机推荐

  1. codefoeces B. Friends and Presents

    B. Friends and Presents time limit per test 1 second memory limit per test 256 megabytes input stand ...

  2. [ssh新闻公布系统三]存储新闻

    一.存储新闻dao方法 在NewsDao.java中新增存储新闻的saveOrupdate方法 public void saveOrupdate(News news){ getSession().sa ...

  3. VMware虚拟机下如何安装一个64位的win7系统

    原文地址:http://www.xitongcheng.com/jiaocheng/win7_article_21001.html VMware虚拟机软件可以在一台电脑上运行多个操作系统,一些网友想在 ...

  4. 【每日Scrum】第五天(4.15) TD学生助手Sprint1站立会议

    TD学生助手Sprint1站立会议(4.15) 任务看板 站立会议内容 组员 昨天 今天 困难 签到 刘铸辉 (组长) 今天和静姐,娇哥把图片3D画廊效果的功能实现了,GPS功能没什么进展,所以只能继 ...

  5. 找回Xcode7的代码折叠功能

    升级到Xcode7后,会发现代码折叠功能不见了,这是怎么回事? 其实这个功能还在的,用以下的快捷键仍然可以折叠代码.只是不能用鼠标实现折叠了:在Xcode菜单里选择Preference——Text E ...

  6. android自己定义渐变进度条

    项目中须要用到一个弧形渐变的进度条,通过android自带是不能实现的.我是没有找到实现的方法,有大神知道的能够指点.效果图是以下这种 这是通过继承VIew来绘制出来的,网上也有相似的,可是代码那是相 ...

  7. # kubernetes调度之nodeName与NodeSelector

    系列目录 Kubernetes的调度有简单,有复杂,指定NodeName和使用NodeSelector调度是最简单的,可以将Pod调度到期望的节点上. 本文主要介绍kubernetes调度框架中的No ...

  8. windows下的txt格式转换成linux下的TXT

    存在的问题是 多出一个方框或者黑格子 主要是因为bash 不能忽略windows的问题 用sed 命令来处理,分别是windows转linux,linux转windows sed -e 's/.$// ...

  9. POJ 1195 Mobile phones (二维树状数组)

    Description Suppose that the fourth generation mobile phone base stations in the Tampere area operat ...

  10. uva 10733 The Colored Cubes<polya定理>

    链接:http://uva.onlinejudge.org/external/107/10733.pdf 题意: N 种颜色可以涂成多少种立方体~ 思路: 使正六面体保持不变的运动群总共有: 1.不变 ...