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

打印 上一主题 下一主题

主题 666|帖子 666|积分 1998


   盼望你开心,盼望你健康,盼望你幸福,盼望你点赞!
  末了的末了,关注喵,关注喵,关注喵,大大会看到更多有趣的博客哦!!!
  喵喵喵,你对我真的很紧张!
  
目次
媒介
CHECK约束
理解CHECK约束
创建CHECK约束
数据库的查询
了解SELECT语法布局
认识根本子句
认识SELECT子句
总结

媒介

      查询和统计数据是数据库的根本功能。         在数据库实际操作中,常常碰到类似的查询,比方:       查询成绩在   80   ~   90   之间的学生;       查询姓李的学生;       查询选了李明老师,成绩在   80   分以上的学生姓名;       统计各系、各专业人数;       查询成绩前   10   名的学生等。      这些查询有些是简朴的单表查询,有些是字符匹配方面的查询,有些是基于多表的查询,有些要利用函数进行统计
  
  
本任务将从简朴的单表查询开始,学习利用查询的根本语法。

  

  
  学习FROM、WHERE、GROUP BY、ORDER BY、HAVING和LIMIT等子句的利用。

  

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

  

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

  
CHECK约束

理解CHECK约束

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

  
比方:

  
score表中score字段的数值要在0~100之间,

  

  
students表中出生日期必须大于1990年1月1日。

  

  
如许的规则可以利用CHECK完整性约束来指定。 

  

  
CHECK完整性约束在创建表的时间界说。可以界说为列完整性约束,也可以界说为表完整性约束。

  

  
语法格式如下:

  
    CHECK(expr)

  

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

  创建CHECK约束

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

  
mysql> create table employees3

  
    (学号 CHAR(5) not null primary key,

  
    性别 CHAR(2) DEFAULT '男',

  
  出生日期 DATE not null ,

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

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

  
  )

  

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

  
    mysql> create table employees3

  
   ( 学号CHAR(5) not null primary key,

  
   性别CHAR(2) 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   名的学生等。      这些查询有些是简朴的单表查询,有些是字符匹配方面的查询,有些是基于多表的查询,有些要利用函数进行统计
  
  
本任务将从简朴的单表查询开始,学习利用查询的根本语法。

  

  
  学习FROM、WHERE、GROUP BY、ORDER BY、HAVING和LIMIT等子句的利用。

  

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

  

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

  
   盼望你开心,盼望你健康,盼望你幸福,盼望你点赞!
  末了的末了,关注喵,关注喵,关注喵,大大会看到更多有趣的博客哦!!!
  喵喵喵,你对我真的很紧张!
  


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

民工心事

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表