六、mysql语法
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语法的更多相关文章
- 学习mysql语法--基础篇(二)
前 言 mysql mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: [SQL语句的组成] DML ...
- mysql进阶(二十六)MySQL 索引类型(初学者必看)
mysql进阶(二十六)MySQL 索引类型(初学者必看) 索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型. 在数 ...
- MYSQL 语法大全自己总结的
mysql语法大全 --------数据链接---------------------数据库服务启动net start mysql --关闭服务net stop mysql --登录 -u,-p后面不 ...
- 学习mysql语法--基础篇(一)
前 言 mysql mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: 一.创建用户,创建数据库,给 ...
- mysql语法之case when then与列转行
mysql语法中case when then与列转行的使用场景非常丰富. case语句类似java中条件分支语句的作用,可以类比java中的switch语句或者if语句来学习. 其语法如下: case ...
- mongo 与 传统mysql语法对比
MongoDB语法 MySql语法 db.test.find({'name':'foobar'})<==> select ...
- Mongodb与mysql语法比较
Mongodb与mysql语法比较 mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由 ...
- mongodb linux基本启动 基础增删改 mysql语法的对比
一.主流数据源类型 还存在自定义数据源以及REST接口数据,共6中数据源. 二.linux下启动连接数据库 进去mongodb的目录启动服务:mongo --host 192.168.320.826 ...
- MySQL语法基础
一.通用语法 1.MySQL数据库的SQL语句不区分大小写 2.可以用/**/完成注释 3.常用数据类型 类型 描述 int 整型 double 浮点型 varchar 字符串型 date 日期类型, ...
随机推荐
- d3js 画布 概念
HTML 5 提供两种强有力的“画布”:SVG 和 Canvas. SVG 有如下特点: SVG 绘制的是矢量图,因此对图像进行放大不会失真. 基于 XML,可以为每个元素添加 JavaScript ...
- Git命令学习总结(-)
入职的第一天,让git命令直接给难住了,汗!使用习惯可视化的工具对于命令行早就忘记的一干二净.还好,回家自己练习一下,总会没有错的.git就不做简介了,版本管理除了svn就是git了,其他的都无所谓了 ...
- POJ 2480 Longge's problem 积性函数
题目来源:id=2480" style="color:rgb(106,57,6); text-decoration:none">POJ 2480 Longge's ...
- Ubuntu 15.10
安装Ubuntu 15.10后要做的事 http://blog.csdn.net/skykingf/article/details/45267517 ubuntu15.10 install-mac-t ...
- centos7下memcached的安装配置
memcached 依赖 libevent-devel 首先安装libevent-devel yum -y install libevent-devel 安装完毕! 继续安装memcached yum ...
- 浅谈 SOAP
http://www.ibm.com/developerworks/cn/xml/x-sisoap/ 本文对 SOAP 作了一个初步介绍,给出几个简单示例:接着比较 CORBA,DCOM/COM 与 ...
- 【BZOJ4668】冷战 并查集
[BZOJ4668]冷战 Description 1946 年 3 月 5 日,英国前首相温斯顿·丘吉尔在美国富尔顿发表“铁幕演说”,正式拉开了冷战序幕. 美国和苏联同为世界上的“超级大国”,为了争夺 ...
- EasyDarwin开源摄像机访问EasyCamera中海康摄像头语音对讲和云台控制转发实现
转自:http://blog.csdn.net/yanzhuomin/article/details/52887311 EasyCamera中关于摄像头SDK的调用都集中在EasyCameraSour ...
- leetcode题目解答报告(2)
Pascal's Triangle 题目描述 Given numRows, generate the first numRows of Pascal's triangle. For example, ...
- Elasticsearch + Logstash + Kibana 搭建教程
# ELK:Elasticsearch + Logstash + Kibana 搭建教程 Shipper:日志收集者.负责监控本地日志文件的变化,及时把日志文件的最新内容收集起来,输出到Redis暂存 ...