[MySQL]数据库原理9——喵喵期末不挂科

希望你开心,希望你健康,希望你幸福,希望你点赞!

最后的最后,关注喵,关注喵,关注喵,大大会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要!

目录

前言

CHECK约束

理解CHECK约束

创建CHECK约束

数据库的查询

了解SELECT语法结构

认识基本子句

认识SELECT子句

总结


前言

查询和统计数据是数据库的基本功能。
在数据库实际操作中,经常遇到类似的查询,例如:
查询成绩在 80 90 之间的学生;
查询姓李的学生;
查询选了李明老师,成绩在 80 分以上的学生姓名;
统计各系、各专业人数;
查询成绩前 10 名的学生等。

这些查询有些是简单的单表查询,有些是字符匹配方面的查询,有些是基于多表的查询,有些要使用函数进行统计

本任务将从简单的单表查询开始,学习使用查询的基本语法。

  学习FROMWHEREGROUP BYORDER BYHAVINGLIMIT等子句的使用。

  学习聚合函数在数据统计查询中的应用。

  学习基于多表的全连接、JOIN连接、子查询以及联合查询的实际应用。


CHECK约束

理解CHECK约束

   主键、替代键和外键都是常见的完整性约束的例子。但是,每个数据库都还有一些专用的完整性约束。

例如:

score表中score字段的数值要在0100之间

students表中出生日期必须大于199011

这样的规则可以使用CHECK完整性约束来指定。 

CHECK完整性约束在创建表的时候定义。可以定义为列完整性约束,也可以定义为表完整性约束。

语法格式如下:

    CHECK(expr)

expr是一个表达式,指定需要检查的条件,在更新表数据的时候,MySQL会检查更新后的数据行是否满足CHECK的条件。

创建CHECK约束

TEST为库中,创建表employees3,包含学号、性别和出生日期,出生日期必须大于198011日,性别只能是“男”和“女”。

mysql> create table employees3

    (学号 CHAR5 not null primary key,

    性别 CHAR2 DEFAULT '',

  出生日期 DATE not null ,

    CHECK (性别='' OR 性别=''),

    CHECK (出生日期>'1980-1-1')

  )

也可以作为列的完整性约束,SQL语句如下。

    mysql> create table employees3

   ( 学号CHAR5 not null primary key,

   性别CHAR2 DEFAULT ‘

   CHECK (性别=’’ OR 性别=’’),

    出生日期DATE not null

  CHECK(出生日期>’1980-1-1’)

  )

注:MySQL所有的存储引擎均能够对CHECK子句进行分析,但是忽略CHECK子句,即CHECK约束还不起作用。


数据库的查询

了解SELECT语法结构

SELECT语句可以从一个或多个表中选取特定的行和列,结果通常是生成一个临时表。其基本语法格式如下。

 SELECT

[ALL|DISTINCT]

FROM表名[,表名]……

 [WHERE子句]

[GROUP BY子句]

 [HAVING子句]

[ORDER  BY子句]

[LIMIT子句]

[] 表示可选项。
 SELECT 子句: 指定 要查询的 列名称 ,列与列之间用逗号隔开。
FROM 子句:指定要查询的 ,可以指定两个以上的表,表与表之间用逗号隔开。
WHERE 子句:指定要查询的 条件
GROUP BY :子句用于对查询结构进行 分组
HAVING 子句:指定分组的条件,通常在 GROUP BY 子句之后。
ORDER BY 子句:用于对查询结果进行 排序
LIMIT 子句: 限制 查询的 输出结果行

查询学生的学号、姓名和联系电话,SQL语句如下。

SELECT s_no,s_name,phone FROM STUDENTS ;


认识基本子句

认识SELECT子句

    SELECT子句用于指定要返回的列,SELECT常用参数如表所示。


认识SELECT子句

1.使用通配符“*”

【任务10.2】 查询学生的所有记录。

 SELECT  *  FROM  STUDENTS;

2.使用DISTINCT消除重复行

【任务10.3】 查询学生所在系部,去掉重复值。

SELECT  distinict   d_no   FROM STUDENTS;

3.使用AS定义查询列的别名(AS也可以后省略,也可不用引号)

【任务10.4】 统计男生的学生人数。

SELECT COUNT(*) AS '男生人数'

FROM   STUDENTS  WHERE  SEX='男';


总结

查询和统计数据是数据库的基本功能。
在数据库实际操作中,经常遇到类似的查询,例如:
查询成绩在 80 90 之间的学生;
查询姓李的学生;
查询选了李明老师,成绩在 80 分以上的学生姓名;
统计各系、各专业人数;
查询成绩前 10 名的学生等。

这些查询有些是简单的单表查询,有些是字符匹配方面的查询,有些是基于多表的查询,有些要使用函数进行统计

本任务将从简单的单表查询开始,学习使用查询的基本语法。

  学习FROMWHEREGROUP BYORDER BYHAVINGLIMIT等子句的使用。

  学习聚合函数在数据统计查询中的应用。

  学习基于多表的全连接、JOIN连接、子查询以及联合查询的实际应用。


希望你开心,希望你健康,希望你幸福,希望你点赞!

最后的最后,关注喵,关注喵,关注喵,大大会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要!

  • 86
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 66
    评论
本题的主要考点是对MySQL数据库原理与应用方面进行探讨和分析。MySQL是一种流行的关系型数据库管理系统,在今天的互联网时代,它被广泛应用于各种企业级应用程序的数据库支持中。在掌握MySQL的基础知识和SQL语言基础的前提下,我们可以更深入地了解MySQL数据库原理和高级应用。 在MySQL数据库原理方面,我们需要深入了解其底层存储引擎的工作原理以及索引的作用。MySQL底层存储引擎包括InnoDB、MyISAM等,它们的性能表现和适用场景有所不同。索引是MySQL数据库管理系统的核心组成部分,它可以提高数据库查询性能和优化查询执行计划。了解并熟练掌握MySQL数据库索引的原理和设计方法,可以使我们更高效地完成复杂查询和数据分析任务。 在MySQL数据库应用方面,我们需要掌握存储过程、触发器和视图等高级数据库特性的使用方法。存储过程是一种预定义的SQL语句集合,可以通过简单的调用执行,减少应用程序开发和维护的工作量。触发器是一组自动执行的SQL语句,可用于满足数据完整性和数据访问控制的需求。视图是一种虚拟的表,可以使得用户在不访问原始数据表的情况下,方便地获取数据。 总之,深入了解MySQL数据库原理和应用,可以使我们更轻松地实现数据库的设计、管理和优化,为企业级应用程序的开发和数据库支持提供更加稳定和高效的技术解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 66
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫佛佛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值