mysql select5种子句介绍

简要

一、五种字句

二、具体解释五种字句

一、五种字句

where、group by、having、order by、limit

二、具体解释五种字句

2.1、理解where子句

理解select 列1。列2… fromtable where where子句

a、 把where子句看成表达式。到table中查询满足表达式成立的行

b、 上述查询语句的运行顺序。先找到表table后。再运行where子句。满足表达式后进行展示。

c、比較运算符和逻辑运算符

2.2、groupby

2.2.1、理解分组作用,适用于统计

2.2.2、与聚合函数一起适用。

max(列)。min(列)。avg(),sum(),count()

2.2.3、依照分组后。仅仅能得到每一个分组的第一条数据

2.2.4、案例 table表以及数据例如以下:

typeid

name

price

1

A1

10

2

B1

11

1

A2

12

2

B2

22

具体解释1: select typeid,max(price) from table group by typeid

2.2.4.1、从table表中,依照typeid进行分组得到

typeid为1的数据

typeid

name

price

1

A1

10

1

A2

12

typeid为2的数据

typeid

name

price

2

B1

11

2

B2

22

2.2.4.2、从分组得到的数据中,依照聚合函数获取各个分组特定列的值

typeid

price

1

12

2

22

具体解释2: select typeid, name,max(price) from table group by typeid

依照具体解释1的运行流程得到结果

typeid

name

price

1

A1

12

2

B1

22

备注: 在对照数据是否正确时,发现name有误。

由于price最大值为12时。name为A2而不是A1。

这是由于。在分组得到的结果中,利用聚合函数max进行比較获取最大值时,是从第一行往下比較,第一行的name为A1,往下进行比較替换的仅仅是price值。

因此。name仍然为第一行所得到的值。

2.3、having

having与where异同点:

1、having与where类似,可筛选数据;where后的表达式怎么写,having就怎么写

2、where针对表中的列发挥作用,查询数据。having针对查询结果中的列发挥作用,筛选数据

案例: 查找两门及两门以上不及格的同学的平均分

selectname,avg(score),sum(score<60) as s from stu group by name having s>=2;

2.4、orderby 与limit

1、order by 排序功能: 依照一个或多个字段对查询结果进行升序or降序排序.默认是升序

语法: select 字段1,字段2from table order by 字段1 [asc|desc]

2、limit 对查询结果取相应的条数

语法: select 字段1,字段2from table limit offset,n

(当中,0<=offset<总结果条数。n>0. offset为偏移量,n是指在offset的位置上取n条数据)

2.5、总结

1、语法顺序:

select 字段1,字段2….. from table where子句 group by 字段 having 子句 order by 字段 [asc|desc] limit n,m;

2、运行顺序

2.1、from table 找到源数据

2.2、where子句,把其看成一个表达式。在2.1的基础上一行一行推断表达式是否成立

2.3、group by 在2.2的基础上,对字段进行分组,得到查询结果

2.4、having 在2.3的基础上。对查询结果也是进行一行一行推断表达式是否成立。

2.5、order by 在2.4的基础上。对查询结果进行排序

2.6、limit 在2.5的基础上,取相应条数

2.7、select 在2.6的基础上。对结果进行展示

The quieter you become,the more you are able to hear。

小贝_mysql select5种子句介绍的更多相关文章

  1. select 5种子句介绍

    一.Where 条件查询 ①where expression 用法:expression为真,则该行取出 运用场合 各种条件查询场合,如按学号查学生,按价格查商品,按发布时间查新闻等 ②select ...

  2. 小贝_mysql优化学习

    mysql优化 简要: 1.数据库设计优化 2.sql语句优化 3.表切割 4.读写分离技术 一.数据库设计优化 1.表设计要符合三范式.当然,有时也须要适当的逆范式 2.什么是三范式 一范式: 具有 ...

  3. 小贝_mysql建表以及列属性

    mysql建表以及列属性 简要: 一.建表原则 二.具体的列属性说明 一.建表原则 建表: 事实上就是声明列的过程,数据终于是以文件的形式放在硬盘(内存) 列: 不同的列类型占的空间不一样. 选列的原 ...

  4. 小贝_mysql 触发器使用

    触发器 简要 1.触发器基本概念 2.触发器语法及实战样例 3.before和after差别 一.触发器基本概念 1.一触即发 2.作用: 监视某种情况并触发某种操作 3.观察场景 一个电子商城: 商 ...

  5. 小贝_mysql select连接查询

    select连接查询 简要: 一.union联合查询 二.左右内连接 一.union联合查询 作用: 把2次或多次查询结果合并起来 具体: (表1查询结果) union (表2查询结果) 运行: 先算 ...

  6. 小贝_mysql主从复制作用以及案例

    mysql主从复制 简要: 一.mysql用户授权 二.mysql bin-log日志 三.mysql主从复制   一.mysql用户授权 1.命令 2.作用:进行权限控制 3.样例: (备注: 同意 ...

  7. 小贝_mysql数据库备份与恢复

    mysql数据库备份与恢复 简要:        一.数据库备份        二.数据库恢复 一.数据库备份 1.备份简单说明 : 系统执行中,增量备份与总体备份 例: 每周日总体备份一次,周一到周 ...

  8. 小贝_mysql 存储过程

    存储过程 简要: 1.什么是存储过程 2.使用存储过程 一.存储过程 概念类似于函数,就是把一段代码封装起来.当要行这段代码的时候,能够通过调用该存储过程来实现.在封装的语句体里面.能够用if/els ...

  9. 小贝_mysql sql语句优化过程

    sql语句优化 一.SQL优化的一般步骤 (1).通过show status命令了解各种SQL的运行频率. (2).定位运行效率较低的SQL语句-(重点select) (3).通过explain分析低 ...

随机推荐

  1. 将Oracle中的数据放入elasticsearch

    package com.c4c.test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...

  2. 集合接口list与集合接口set的区别

    在Java中 除了 Map以外的集合的根接口都是Collection接口,而在Collection接口的子接口中,最重要的莫过于List和Set集合接口. 今天我们就来谈谈List集合接口与Set集合 ...

  3. Linux Mint 17.1 安装全配置

    Linux Mint 17.1 安装全配置 I. 前言 由于自己的本子出现了一些故障需要重新安装系统,就上网看看今年4,5月份发布的一些新的发行版来试试.原先电脑上安装的是opensuse13.2, ...

  4. 创业笔记-Node.js入门之JavaScript与Node.js

    JavaScript与Node.js JavaScript与你 抛开技术,我们先来聊聊你以及你和JavaScript的关系.本章的主要目的是想让你看看,对你而言是否有必要继续阅读后续章节的内容. 如果 ...

  5. HDU 2512

    水题 #include <iostream> #include <cstdio> #include <algorithm> #define LL __int64 # ...

  6. 一起talk C栗子吧(第一百一十二回:C语言实例--线程同步概述)

    各位看官们,大家好.上一回中咱们说的是线程间通信的样例,这一回咱们说的样例是:线程同步.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,提到同步.我想大家都不陌生,由于我们在前面章回中介绍 ...

  7. [CSS3] Create Dynamic Styles with CSS Variables

    In this lesson we are going to use CSS variables to keep our application's colors consistent. This i ...

  8. Yocto tips (19): Yocto SDK Toolchian的使用

    在使用之前须要先source env,导入各种环境变量(注意将路径变更成你自己的): source ../qt5_sdk/environment-setup-cortexa9hf-vfp-neon-p ...

  9. ubuntu 休眠之后蓝牙鼠标无效果。

    ubuntu链接蓝牙鼠标之后.左上角蓝牙标志左下角应该有一个锁的标志. 可是休眠之后,蓝牙鼠标失效,锁没有了,点击按键,出来锁之后,立即消失. 运行两次例如以下命令能够解决: sudo hciconf ...

  10. linux 数据库

    查看数据库状态:service mysqld status 启动数据库服务 service mysql start 如果出现:Another MySQL daemon already running ...