MySQL查询基础
MySQL查询 DQL(Data Query Language )
1.排序查询
# 语法:
select 字段 from 表名 order by 字段1 [降序/升序],字段2 [降序/升序],....;
# 排序方式:DESC 降序 ,ASC 升序。不加排序方式的时候,默认使用ACS!!
order by 后面的字段是排序的条件,只有第一个条件的值相同时,才会使用后面的值进行比较排序
2.聚合函数 :对数据表中的一整个字段数据进行纵向计算操作。
①count :计算总个数
②sum:计算总合
③avg: 计算平均值
④max:计算最大值
⑤min:计算最小值
# 语法:
select 聚合函数(字段) from 表名;
# 例如:
select count(id) from mytable; -- 利用主键计算总个数
select sum(mathScore) from mytable; -- 求出数学成绩总和
select max(age) from mytable; -- 找出年龄最大的员工,让HR和他谈谈.....
select min(KPI) from mytable; -- 找出KPI最低的员工,让HR和他谈谈.....
注意:聚合函数计算的时候,默认是会排除NULL值而使得某些结果不对,例如count函数求取总的age数,但是可能因为某个人的年龄没有设置而导致计算出的总人数比实际的人数更少,解决方法:
# 1.使用主键进行计算
select count(id) from mytable;
# 2.使用ifnull函数把null值设置一个默认值并进行计算
select count(ifnull(age,0)) from mytable;-- 如果age中有null值,则把它设置为0,并参与总合的计算,这样算出来的总合数就不会少。
3.分组查询
# 分组查询,以某个字段为分组依据,后面的聚合函数可以有多个
select 字段1, count(字段2), sum(字段n).... from mytable group by 字段1;
# 分组查询,附加查询条件
select 字段1, count(字段2), sum(字段n).... from mytable [where 条件] group by 字段1;
4.分页查询
select 字段 from 表名 limit 开始分页的位置,当前页展示的数量;
# 例如:从第三条数据开始展示,总共展示6条数据
select id,name,age from mytable limit 3,6;
MySQL查询基础的更多相关文章
- mysql基础之-mysql查询缓存(九)
0x01 MySQL查询缓存 用于保存MySQL查询语句返回的完整结果,被命中时,MySQL会立即返回结果,省去解析.优化和执行等操作 如何检查缓存?? MySQL保存结果与缓存中: 把select语 ...
- Solr与MySQL查询性能对比
本文简单对比下Solr与MySQL的查询性能速度. 测试数据量:10407608 Num Docs: 10407608 这里对MySQL的查询时间都包含了从MySQL Server获取数据的时 ...
- Mysql 查询练习
Mysql 查询练习 ---创建班级表 create table class( cid int auto_increment primary key, caption ) )engine=innodb ...
- mysql使用基础 sql语句(一)
csdn博文地址:mysql使用基础 sql语句(一) 点击进入 命令行输入mysql -u root -p,回车再输入密码,进入mysql. 终端命令以分号作为一条语句的结束,可分为多行输入,只需 ...
- mysql数据库基础的简单操作指南
最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...
- Mysql 查询性能优化
查询优化,索引优化,库表结构优化需要齐头并进,一个不能落. 为什么查询速度会慢 在阐释编写快速的查询之前,需要清楚一点,真正重要的是响应时间.如果把查询看做是一个任务的话,那么它由一系列子任务构成,每 ...
- Mysql索引基础
Mysql索引基础 基本概念: 索引是一种特殊的数据库结构,可以用来快速查询数据库表中的特定记录.索引是提高数据库性能的重要方式.索引创建在表上,是对数据库表中一列或多列的值进行排序的一种结构.可以提 ...
- MySQL数据库基础
MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
随机推荐
- sublime text3神器插件
(首先安装)Package Control Package Control,就像 Linux 下的 apt-get 和 yum 一样,它是 Sublime Text 的包管理器 1.Emmet 是一 ...
- Python--day32--struct模块
struct模块:该模块可以把一个类型,如数字,转成固定长度的bytes
- jieba—parallel
jieba 并行处理进行测试,注意:并行分词仅支持默认分词器 jieba.dt 和 jieba.posseg.dt import sys import time import jieba jieba. ...
- H3C 802.1X典型配置举例
- H3C配置console口密码
方法一: [H3C]user-interface console 0 [H3C-ui-console0]authentication-mode password [H3C-ui-console0]se ...
- Linux 内核引用计数的操作
一个 kobject 的其中一个关键函数是作为一个引用计数器, 给一个它被嵌入的对象. 只 要对这个对象的引用存在, 这个对象( 和支持它的代码) 必须继续存在. 来操作一个 kobject 的引用计 ...
- 【Linux】Linux下date,time等时间设置
date命令的帮助信息 [root@localhost source]# date --help用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] ...
- Adam Harley的卷积神经网络3D视觉化模型
https://m.huxiu.com/article/138857/1.html 最近 Google Tensorflow 做了一个非常直观的神经网络 playground.不夸张地说,现在每个人都 ...
- 使用Miniconda安装Scrapy遇到的坑
最近在看小甲鱼的书,学习学习爬虫,其中有一块是通过Miniconda3安装Scrapy,结果却遇到了下面的错误:fatal error in launcher:unable to create pro ...
- Rxjava2 介绍与详解实例
目录 前言 RX介绍 Rx模式 Rx使用依赖: Rxjava的入门基础 1. Observable 2. Flowable 3. Single 4. Completable 5. Maybe 6. S ...