返回顶部
首页 > 资讯 > 数据库 >MySQL中SQL命令语句条件查询实例详解
  • 785
分享到

MySQL中SQL命令语句条件查询实例详解

2024-04-02 19:04:59 785人浏览 八月长安
摘要

目录一、聚合函数二、分组查询三、连接查询四、子查询五、数据库设计三范式及E-R模型六、外键约束总结一、聚合函数 聚合函数:又叫组函数,用来对表中的数据进行统计和计算,结合group by分组使用,用于统计和计算分组数据

一、聚合函数

聚合函数:又叫组函数,用来对表中的数据进行统计和计算,结合group by分组使用,用于统计和计算分组数据

常用聚合函数

  • count(col):求指定列的总行数
  • max(col):求指定列的最大值
  • min(col):求指定列的最小值
  • sum(col):求指定列的和
  • avg(col):求指定列的平均值(不计null值)
    • ifnull(字段名,指定值):判断指定字段是否为null,若为空则使用指定值替换

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

二、分组查询

分组查询:将查询结果按指定字段进行分组,字段中数据相等的分为一组

语法:group by 列名 [having 条件表达式][with rollup]

  • 列名:指按指定字段的值进行分组
  • having 条件表达式:用来过滤分组后的数据
  • with rollup:在所有记录最后加上一条记录,显示select查询时聚合函数的统计和计算结果

group by:用于单个或多个字段分组

MySQL中SQL命令语句条件查询实例详解

group_concat(字段名):统计每个分组指定字段的信息集合,每个信息间用逗号分隔

MySQL中SQL命令语句条件查询实例详解

group by结合聚合函数使用

MySQL中SQL命令语句条件查询实例详解

group by结合having使用

having作用:与where类似,用来过滤分组数据,只能用于group by

MySQL中SQL命令语句条件查询实例详解

group by结合with rollup使用

with rollup作用:在记录最后新增一行,显示select查询时聚合函数的统计和计算结果

MySQL中SQL命令语句条件查询实例详解

三、连接查询

连接查询:能够实现多个表之间的查询,适合查询的字段数据来自不同的表的情况

内连接:查询两个表中符合条件的共有记录,根据连接查询条件取出两个表中的交集
内连接查询语法:select 字段 from 表1 inner join 表2 on 表1.字段1=表2.字段2;
    inner join:内连接查询关键字
    on:连接查询条件
 
左连接:以左表为主根据条件查询右表数据,若右表数据不存在则用null填充
左连接查询语法:select 字段 from 表1 left join 表2 on 表1.字段1=表2.字段2;
    left join:左连接查询关键字
    on:连接查询条件
    表1为左表,表2为右表
 
右连接:以右表为主根据条件查询左表数据,若左表数据不存在则用null值填充
右连接查询语法:select 字段 from 表1 right join 表2 on 表1.字段1=表2.字段2;
    right join:右连接查询关键字
    on:连接查询条件
    表1为左表,表2为右表
 
自连接:左表与右表为同一个表,根据连接查询条件查询两个表中数据,必须对表起别名
自连接查询语法:select 字段 from 表名 as 别名1 inner join 表名 as 别名2 on 别名1.字段1=别名2.字段2;
自连接查询就是把一张表模拟成左右两张表,然后进行连表查询,是一种特殊的连接方式,连接的表还是本身这张表 

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

四、子查询

子查询:在select语句中嵌入另一个select语句,被嵌入的select称为子查询语句,外部select称为主查询 

子查询与主查询关系

  • 子查询是嵌入在主查询中的
  • 子查询辅助主查询,用来充当条件或数据源
  • 子查询可以独立存在,是一条完整的select语句

MySQL中SQL命令语句条件查询实例详解

五、数据库设计三范式及E-R模型

范式:对设计数据库提出的一些规范,共有8范式,一般只需遵循3范式 

  • 第一范式(1NF):强调列的原子性,即列不能再细分为其他列
  • 第二范式(2NF):满足1NF,另有两部分内容
    • 表必须有一个主键
    • 非主键字段必须完全依赖于主键,不能只依赖与主键一部分
  • 第三范式(3NF):满足 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况

E-R模型:即实体-关系模型,用来描述数据库存储数据的结构模型

  • 实体:用矩形表示,并标注实体名称
  • 属性:用椭圆表示,并标注属性名称
  • 关系:用菱形表示,并标注关系名称
    • 一对一:如人与身份证,在两个表中创建一个字段,其中一个表存储另一个表的主键值,关系是一种数据,需要通过一个字段存储在表中
    • 一对多:如学生表与班级表,在多的一方表(学生表)中创建一个字段,存储班级表的主键值
    • 多对多:如学生表、班级表、科目表,新建一张表C,这个表只有两个字段,一个用于存储A的主键值,一个用于存储B的主键值

六、外键约束

外键约束:对外键字段的值进行更新和插入时会和引用表中字段的数据进行验证,若数据不合法则更新和插入失败,能够保证数据有效性

添加和删除外键约束

已存在的字段添加外键约束:alter table 表1 add foreign key(表1中的外键) references 表2(表2主键);
                    或:alter table 从表 add foreign key(外键字段) references 主表(主键字段);
例:alter table students add foreign key(sid) references classe(id);
 
创建表添加外键约束:
create table teacher(
    id int primary key auto_increment not null,
    name varchar(10),
    sid int not null,
    foreign key(sid) references students(id)
);
 
删除外键约束:
获取外键约束名称:show create table 表名;
删除:alter table 表名 drop foreign key 外键名;

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

MySQL中SQL命令语句条件查询实例详解

总结

到此这篇关于Mysqlsql命令语句条件查询的文章就介绍到这了,更多相关SQL命令语句条件查询内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中SQL命令语句条件查询实例详解

本文链接: https://www.lsjlt.com/news/117084.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL中SQL命令语句条件查询实例详解
    目录一、聚合函数二、分组查询三、连接查询四、子查询五、数据库设计三范式及E-R模型六、外键约束总结一、聚合函数 聚合函数:又叫组函数,用来对表中的数据进行统计和计算,结合group by分组使用,用于统计和计算分组数据 ...
    99+
    2024-04-02
  • sql条件查询语句的实例用法
    本篇内容主要讲解“sql条件查询语句的实例用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sql条件查询语句的实例用法”吧! 复制...
    99+
    2024-04-02
  • SQL语句中的条件查询
    条件查询:     * 什么是条件查询?不是将表中所有数据都查出来,而是查询出符合条件的。         * 语法格式:                     select                           ...
    99+
    2023-09-01
    数据库 sql mysql
  • mysql条件查询语句
    mysql条件查询语句用于根据特定条件检索数据,使用where子句指定条件,支持多种条件类型,包括比较运算符、逻辑运算符、null检查、字符串匹配等。高级条件包括子查询、连接、...
    99+
    2024-08-02
    mysql
  • sql条件查询语句怎么写
    SQL条件查询语句的写法如下:SELECT 列名FROM 表名WHERE 条件;其中,列名是要查询的字段名,可以是单...
    99+
    2023-10-10
    sql
  • mysql如何实现条件查询语句
    小编给大家分享一下mysql如何实现条件查询语句,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 在mysql中,可以使用SELECT语句和WHER...
    99+
    2024-04-02
  • SQL中where语句的用法及实例代码(条件查询)
    目录1.where语法和用法(1)语法:where <criteria> 即where <查询条件>(2)用法:获取满足一定条件的目标数据。2.实例(1)单一条件查询...
    99+
    2024-04-02
  • MySQL查询语句的常用命令和使用实例
    下面一起来了解下MySQL查询语句的常用命令和使用实例,相信大家看完肯定会受益匪浅,文字在精不在多,希望MySQL查询语句的常用命令和使用实例这篇短内容是你想要的。一、相关命令语法格式1.1 添加字段alt...
    99+
    2024-04-02
  • MySQL中一条SQL查询语句是如何执行的
    目录前言1. 处理连接1.1 客户端和服务端的通信方式1.1.1 TCP/IP协议1.1.2 UNIX域套接字1.1.3 命名管道和共享内存1.2 权限验证1.3 查看MySQL连接...
    99+
    2024-04-02
  • mysql查询语句select命令怎么使用
    在MySQL中,使用SELECT命令可以从数据库中检索数据。其基本语法如下: SELECT column1, column2...
    99+
    2024-04-09
    mysql
  • Python使用sql语句对mysql数据库多条件模糊查询的思路详解
    def find_worldByName(c_name,continent): print(c_name) print(continent) sql = " SELECT * FR...
    99+
    2022-05-28
    Python mysql多条件模糊查询 Python mysql 查询
  • Go中的条件语句Switch示例详解
    Switch简介 Go的switch的基本功能和C、Java类似: switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上至下逐一测试,直到...
    99+
    2024-04-02
  • MySQL 查询语句SELECT和数据条件过滤
    MySQL 查询语句SELECT ,主要是用 * 表示任意字段,也可以写id,name,content 等,数据条件过滤主要是between,and,or ,WHERE,in,like,li...
    99+
    2024-04-02
  • MySQL数据库必备之条件查询语句
    目录1、基本语法2、按条件表达式筛选3、按逻辑表达式筛选4、模糊查询5、安全等于1、基本语法 SELECT 查询列表 FROM 表名 WHERE 筛选表达式...
    99+
    2024-04-02
  • 分析mysql中一条SQL查询语句是如何执行的
    目录一、MySQL 逻辑架构概览二、连接器(Connector)三、查询缓存(Query Cache)四、解析器(Parser)五、优化器(Optimizer)六、执行器七、小结一、MySQL 逻辑架构概览 MySQ...
    99+
    2022-05-30
    mysql 查询 查询 执行过程
  • MySQL中怎么优化SQL查询语句
    这期内容当中小编将会给大家带来有关MySQL中怎么优化SQL查询语句,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、应尽量避免在 where 子句中使用!=或...
    99+
    2024-04-02
  • MySQL单表查询语句详解(一)
    ...
    99+
    2014-06-24
    MySQL单表查询语句详解(一)
  • Verilog关键词的条件语句实例详解
    目录关键词:if,选择器条件语句关键词:if,选择器 条件语句 条件(if)语句用于控制执行语句要根据条件判断来确定是否执行。 条件语句用关键字 if 和 else 来声明,条件表...
    99+
    2023-05-15
    Verilog关键词条件语句 Verilog条件语句
  • 怎么在Python中使用sql语句多条件模糊查询mysql数据库
    怎么在Python中使用sql语句多条件模糊查询mysql数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。def find_worldByName(c_nam...
    99+
    2023-06-14
  • 如何使用SQL语句在MySQL中进行数据过滤和条件查询?
    如何使用SQL语句在MySQL中进行数据过滤和条件查询?MySQL作为一种常用的数据库管理系统,广泛用于存储和管理大量数据。在实际应用中,我们常常需要根据特定的条件查询数据,以满足各种需求。本文将介绍如何使用SQL语句在MySQL中进行数据...
    99+
    2023-12-18
    MySQL 数据过滤 SQL语句
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作