MySQL学习之路5-数据表的常用操作
- 排序 :order by desc
select * from <tablename> order by <字段名> desc;order by默认升序 desc 降序
- 分组 :group by 按照字段进行分组
select <查询内容> from <tablename> group by <字段名> ;
- 空值 and 非空值 :null ,not null 查询字段为空或者非空的记录
select <查询内容> from <tablename> where <字段名> is null not null ;
常用的聚合汇总函数
- max and min :返回某列最大最小值
select max(字段名) , min(字段名) from <tablename>;
- count :返回某列记录数
select count(*) from <tablename>;
- sum :返回某列之和
select sum(字段名) from <tablename>;
- avg :返回某列平均值
select avg(字段名) from <tablename>;
其他操作
- and or : 在where子语句中将多个条件结合起来 and 优先级高于or
select * from <tablename> where 条件1 and 条件2 or 条件3;
- like : 在where子语句中,搜索匹配字段的指定内容,通常与%通配符连用
select * from <tablename> where <字段名> like "%匹配内容%" ;
Tips:匹配内容MySQL不区分大小写,若想严格区分大小写,利用binary关键字。
select * from <tablename> where <字段名> like binary "%匹配内容%" ;
- in not in :类似于python中的成员运算符,用于查找在范围内的记录
select * from <tablename> where <字段名> in not in(" 属性值1 "," 属性值2 ") ;
- date_format : 按照指定日期格式输出
select date_format(birthdate,'%Y-%m') from <tablename> ; 日期按照年-月输出
- distinct :去除重复值
select count(distinct 字段名) from <tablename>;
- between :where子语句后,规定某字段查询区间
select * from <tablename> where <字段名> between ' 范围1' and '范围2 ';
- having :与where类似,同为条件筛选语句。
select count(*) from <tablename> where '条件1' group by <字段名> having '条件2' ;
having 与 where区别:执行优先级 where > 聚合函数(count sum max)>having
where子句是在分组之前过滤数据,条件中不能包含聚合函数。
having子句是对分组之后过滤数据,条件中经常包含聚合函数。
- union:多个查询结果做并集
select <字段名> from <tablename>
union
select <字段名> from <tablename>
MySQL条件分支
CASE column
WHEN 条件1 THEN 表达式1
WHEN 条件2 THEN 表达式2
...
ELSE 表达式
END AS column_alias ;
2020-03-12 15:35
MySQL学习之路5-数据表的常用操作的更多相关文章
- MySQL学习笔记_4_MySQL创建数据表(下)
MySQL创建数据表(下) 五.数据表类型及存储位置 1.MySQL与大多数数据库不同,MySQL有一个存储引擎概念.MySQL可以针对不同的存储需求选择不同的存储引擎. 2. showengines ...
- MySQL学习笔记_2_MySQL创建数据表(上)
MySQL创建数据表(上) 一.创建数据表的SQL语句模型[弱类型] CREATETABLE [IF NOT EXISTS] 表名称( 字段名1列的类型[属性][索引], 字段名2 列的类型[属性][ ...
- MySQL学习笔记_3_MySQL创建数据表(中)
MySQL创建数据表(中) 三.数据字段属性 1.unsigned[无符号] 可以让空间增加一倍 比如可以让-128-127增加到0-255 注意:只能用在数值型字段 2.zerofill[前导零] ...
- mysql学习(八)数据表类型-字符集
数据存储引擎: MyISAM:强化快速读取操作. 也有缺点.一些功能不支持 InnoDB:支持一些MyIASM一些不支持的功能 缺点:占用空间大 对比 ...
- MySQL学习(三): 初识数据表
打开数据库: USE db_name : 打开数据库. 创建数据表: 查看数据表: 查看数据表结构: 数据简单的插入与查找: 插入:INSERT [INTO] tbl_name [(col_name) ...
- MySQL学习(一) 数据表基本操作
创建数据库:create database db_name 查看数据库结构:show create database db_name 删除数据库:drop database db_name 查看数据库 ...
- sql server建库建表(数据库和数据表的常用操作)
数据库和数据表 (开发常用 操作) 一,数据库的创建 一个SQLServer 是由两个文件组成的:数据文件(mdf) 和日志文件(ldf),所以我们创建数据库就是要为其指定数据库名.数据文件和日志文件 ...
- MySQL学习之路6-数据表连接方式
内连接 关键字: inner join on 语句:select * from <a_table> inner join <b_table> on a.id = b.id ; ...
- MySQL学习之路(一)——初涉MySQL。
MySQL学习之路(一) 1.1MySQL的概述 MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一个开源的关系型数据库管理系统. MySQL分为社区版和企业版. 1 ...
随机推荐
- Vue 学习笔记(四)
一.路由简单示例 HTML <script src="https://unpkg.com/vue/dist/vue.js"></script> <sc ...
- nlogn的最长不下降子序列【tyvj1254挑选士兵】
var a,d:Array[-..]of longint; i,n,m,k,l:longint; function erfen(x:longint):longint; var mid,h,t:long ...
- StringBuilder内存碎片对性能的影响
StringBuilder内存碎片对性能的影响 TL;DR: StringBuilder内部是由多段char[]组成的半自动链表,因此频繁从中间修改StringBuilder,会将原本连续的内存分隔为 ...
- 037.集群网络-Docker网络实现
一 Docker网络 1.1 Docker网络类型 标准的Docker支持以下4类网络模式: host模式:使用--net=host指定. container模式:使用--net=container: ...
- 14. java基于excel模板导出excel=>使用jxls最新版(注意点)
注意点:如下: jxls官网:http://jxls.sourceforge.net/getting_started.html
- 暴力+辗转相除法——N个数求和
题目来源 PTA 团体程序设计天梯赛-练习集 L1-009 N个数求和 (20分) https://pintia.cn/problem-sets/994805046380707840/problems ...
- 太赞了!阿里几位工程师重写了 《Java 并发编程》
事情是这样的,前些日子和得知一个读者在准备阿里的面试,我蛮有兴趣的跟他聊了起来,随着话题越来越深入,我发现这位读者有意思,他和几位阿里的工程师之前编写了一本 concurrent.redspider. ...
- ASP.NET Core 奇淫技巧之伪属性注入
一.前言 开局先唠嗑一下,许久未曾更新博客,一直在调整自己的状态,去年是我的本命年,或许是应验了本命年的多灾多难,过得十分不顺,不论是生活上还是工作上.还好当我度过了所谓的本命年后,许多事情都在慢慢变 ...
- Python第五章-内置数据结构04-字典
Python 内置的数据结构 四.字典(dict) 字典也是 python 提供给我们的又一个非常重要且有用的数据结构. 字典在别的语言中有时叫关联数组.关联内存.Map等. 字典中存储的是一系列的k ...
- 大规模机器学习(Large Scale Machine Learning)
本博客是针对Andrew Ng在Coursera上的machine learning课程的学习笔记. 目录 在大数据集上进行学习(Learning with Large Data Sets) 随机梯度 ...