news 2026/8/19 14:51:17

【数据库】第三章 SQL

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【数据库】第三章 SQL

3.1 SQL概述

SQL(Structured Query Language)是关系数据库的标准语言,也称结构化查询语言SQL是一种综合性的数据库语言,实现对数据的定义、操纵和控制等功能。

3.1.1 SQL的特点

3.1.2 SQL体系结构

3.2 SQL的定义功能(DDL)

3.2.1 基本表的定义

3.2.2 基本表的修改和删除

3.2.3 索引的建立与删除

  • 索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。
  • 索引包含由表或视图中的一列或多列生成的键。这些键存储在一个结构(B树)中,使数据库可以快速有效地查找与键值关联的行。
  • MySQL有主索引、候选索引、普通索引和唯一索引4种类型的索引
  • Access中有主索引、重复索引和非重复索引
  • SQL Server中则是聚簇索引、非聚簇索引和唯一索引。
  • 聚集索引和非聚集索引都可以是唯一的。
  • 索引也可以不是唯一的,即多行可以共享同一键值。
  • 在创建PRIMARY KEY约束时,如果不存在该表的聚集索引且未指定唯一非聚集索引,则将自动对一列或多列创建唯一聚集索引。主键列不允许空值。
  • 在创建UNIQUE约束时,默认情况下将创建唯一非聚集索引,以便强制UNIQUE约束。如果不存在该表的聚集索引,则可以指定唯一聚集索引。

  • 在一个基本表上最多只能建立一个聚簇索引
  • 聚簇索引的用途:对于某些类型的查询,可以提高查询效率
  • 聚簇索引的适用范围
    • 很少对基表进行增删操作
    • 很少对其中的变长列进行修改操作
  • 小表不需要索引
  • 数据列中有较多不相同数据时可使用索引
  • 查询要返回的数据很少时可用索引
  • 需要经常更新数据时不宜用索引
  • 只有主索引或聚集索引才会引起数据表中数据的排序

3.3 数据查询(DQL)

  • 根据WHERE子句中的条件表达式,从FROM子句指定的基本表,视图等中找出满足条件的元组;
  • 再根据SELECT子句中指出的属性,选出元组中的分量形成结果表。
  • 并不是所有的查询都会用到所有的子句,最小限度情况下,查询只需要一个SELECT 和一个FROM子句。
  • 实际上,SELECT子句所完成的功能类似于关系代数中的投影运算, 而WHERE子句的功能类似于关系代数中的选择运算
  • GROUP BY子句将结果按<列名1>的值进行分组,该属性列值相等的元组为一个组,每个组产生结果表中的一条记录,通常会在每组中使用集函数。若有HAVING短语,则结果只有满足指定条件的组才被选出来。

  • ORDER BY子句是将查询的结果按<列名2>的值进行排序显示,ASC表示升序,DESC表示降序,默认为升序。
  • 可选项[ALL|DISTINCT]的含义是,如果没有指定DISTINCT短语,则默认为ALL, 即保留结果中所有重复的行
  • SQL查询语句的结果也是一个关系。关系代数中基于关系是一个集合这样的数学概念,因此,重复的元组不会在关系中出现但在实践当中,要删除查询结果中的重复元组是相当费时的!

3.3.1 单表查询

1.SQL中的投影:对应于SQL中利用SELECT子句指定属性的功能

    版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
    网站建设 2026/8/19 14:47:42

    基于Arduino与MAX7219的LED点阵Pong游戏实现

    1. 项目概述&#xff1a;从像素点到复古街机 几年前&#xff0c;我在整理工作室的零件盒时&#xff0c;翻出了几块尘封已久的MAX7219点阵模块和一块Arduino Uno。看着那些8x8的红色LED&#xff0c;一个念头突然冒了出来&#xff1a;能不能用这些最简单的元件&#xff0c;复刻一…

    作者头像 李华
    网站建设 2026/8/19 14:47:38

    前端诊断接口设计,先统一指标和版本

    前端诊断接口设计&#xff0c;先统一指标和版本 性能上报接口应先统一指标口径、单位、采样规则和版本&#xff0c;再实现 SDK。清晰的契约能减少服务端解析分支&#xff0c;也让预算告警带上足够的定位上下文。 1. 原始 PerformanceEntry 不能直接作为长期接口 在早期版本中…

    作者头像 李华
    网站建设 2026/8/19 14:46:57

    基于Python的电影推荐系统的设计与实现(源码+文档+部署讲解等)

    联系博主 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;本人主页置顶文章(点我)开头有 …

    作者头像 李华
    网站建设 2026/8/19 14:45:35

    从需求到实现:构建分层智能照明系统,提升工作坊效率与舒适度

    1. 从一盏灯到“光之交响曲”&#xff1a;我的工作坊照明系统重构之路 几年前&#xff0c;我决定把家里的车库改造成一个多功能工作坊。一开始&#xff0c;我对照明的要求很简单&#xff1a;够亮就行。于是&#xff0c;我装了几盏普通的LED面板灯&#xff0c;觉得万事大吉。然而…

    作者头像 李华