• 排序 :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-数据表的常用操作的更多相关文章

  1. MySQL学习笔记_4_MySQL创建数据表(下)

    MySQL创建数据表(下) 五.数据表类型及存储位置 1.MySQL与大多数数据库不同,MySQL有一个存储引擎概念.MySQL可以针对不同的存储需求选择不同的存储引擎. 2. showengines ...

  2. MySQL学习笔记_2_MySQL创建数据表(上)

    MySQL创建数据表(上) 一.创建数据表的SQL语句模型[弱类型] CREATETABLE [IF NOT EXISTS] 表名称( 字段名1列的类型[属性][索引], 字段名2 列的类型[属性][ ...

  3. MySQL学习笔记_3_MySQL创建数据表(中)

    MySQL创建数据表(中) 三.数据字段属性 1.unsigned[无符号] 可以让空间增加一倍 比如可以让-128-127增加到0-255 注意:只能用在数值型字段 2.zerofill[前导零] ...

  4. mysql学习(八)数据表类型-字符集

    数据存储引擎: MyISAM:强化快速读取操作. 也有缺点.一些功能不支持 InnoDB:支持一些MyIASM一些不支持的功能                 缺点:占用空间大 对比          ...

  5. MySQL学习(三): 初识数据表

    打开数据库: USE db_name : 打开数据库. 创建数据表: 查看数据表: 查看数据表结构: 数据简单的插入与查找: 插入:INSERT [INTO] tbl_name [(col_name) ...

  6. MySQL学习(一) 数据表基本操作

    创建数据库:create database db_name 查看数据库结构:show create database db_name 删除数据库:drop database db_name 查看数据库 ...

  7. sql server建库建表(数据库和数据表的常用操作)

    数据库和数据表 (开发常用 操作) 一,数据库的创建 一个SQLServer 是由两个文件组成的:数据文件(mdf) 和日志文件(ldf),所以我们创建数据库就是要为其指定数据库名.数据文件和日志文件 ...

  8. MySQL学习之路6-数据表连接方式

    内连接 关键字: inner join  on 语句:select * from <a_table> inner join <b_table> on a.id = b.id ; ...

  9. MySQL学习之路(一)——初涉MySQL。

    MySQL学习之路(一) 1.1MySQL的概述 MySQL由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一个开源的关系型数据库管理系统. MySQL分为社区版和企业版. 1 ...

随机推荐

  1. 5分钟使用NetModular 完成通讯录 App 开发

    原版连接:https://www.cnblogs.com/shanyou/p/12520894.html NetModular(后文简称NM)是 OLDLI 堪称艺术品级的应用开发框架,它基于经典领域 ...

  2. iOS开发:判断iPhone是否是刘海屏iPhoneX、iPhoneXR、iPhoneXs、iPhoneXs Max等

    保证能判断,呕心沥血,不行切JIJI 方法一 Objective-C // iPhoneX.iPhoneXR.iPhoneXs.iPhoneXs Max等 // 判断刘海屏,返回YES表示是刘海屏 - ...

  3. 洛谷1265prim算法求最小生成树

    题目链接:https://www.luogu.com.cn/problem/P1265 最小生成树的prim算法跟dijkstra算法非常像,就是将点分成两个集合,一个是已经在生成树中的点的集合,一个 ...

  4. hdu3336 Counting the string kmp的next数组的应用

    题目链接:http://icpc.njust.edu.cn/Problem/Hdu/3336/ 题意就是要求一个字符串的所有前缀在字符串中出现的次数之和,我们容易想到kmp中的next数组,next[ ...

  5. Chromium EC框架探索 1.1 开发环境搭建

    1.1 开发环境搭建 本节参考官方文档getting started building ec images quickly编写本节介绍搭建ec开发环境的两种方式,后一种对于绝大多数人而言是不必要的. ...

  6. JUC 中提供的限流利器-Semaphore(信号量)

    在 JUC 包下,有一个 Semaphore 类,翻译成信号量,Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源.Semaphore 跟锁 ...

  7. Hive分析窗口函数

    数据准备 CREATE EXTERNAL TABLE lxw1234 ( cookieid string, createtime string, --day pv INT ) ROW FORMAT D ...

  8. 决战Leetcode: easy part(51-96)

    本博客是个人原创的针对leetcode上的problem的解法,所有solution都基本通过了leetcode的官方Judging,个别未通过的例外情况会在相应部分作特别说明. 欢迎互相交流! em ...

  9. TensorFlow系列专题(五):BP算法原理

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/ ,学习更多的机器学习.深度学习的知识! 一.反向传播算法简介 二.前馈计算的过程 第一层隐藏层的计算 第 ...

  10. Springboot + Freemarker(一)

    Maven pom文件配置 <parent> <groupId>org.springframework.boot</groupId> <artifactId& ...