有时候我们需要对表中的数据进行汇总,而不需要数据本身,为了方便这些类型的检索,SQL给出了5个聚合函数,SQL聚合函数在各主要的SQL实现中得到了相当一致的支持.如下: 1.1 AVG()函数 AVG()通过对表中行数计数并计算其列值之和,求得该列的平均值 //AVG()示例: SELECT AVG(prod_price) AS avg_price FROM Products WHERE vend_id = 'DLL01'; 注意:只用于单个列 AVG()只能用来确定特定数值列的平均值,而且列名…
第1课 了解 SQL 这章主要介绍了数据库,表,字段类型,行,列,主键和SQL等基本概念. 数据库:以某种形式存储的数据集合,在计算机上的表现形式可能是一个文件或者一组文件.我们平时所说的数据库,往往指MySQL或者Oracle这些数据库管理系统.数据库管理系统用来创建操作数据库. 数据表:一个二维数据结构. 列和数据类型 数据行 主键:能够唯一标识一条记录的一列(或几列)数据,主键具有下面的特点: 任意两行都不具有相同的主键值: 每一行都必须具有一个主键值(主键列不允许NULL值): 主键列中…
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> 读书笔记汇总 建立练习环境 以CentOS7系统下的MySQL和MariaDB为例. 01--了解SQL 什么是SQL,为什么很有用 基本的数据库术语 02--检索数据 如何使用SQL的SELECT语句来检索单个表列.多个表列以及所有表列 如…
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用SQL语句 简化复杂的SQL操作 使用表的一部分而不是整个表 保护数据:可以赋予访问表的特定部分的权限 可返回与底层表不同格式和表示的数据 如果应用大量或复杂的视图,极可能影响性能,应该先进行测试再应用视图. 18.1.2 视图的规则和限制 视图名必须唯一,与其他的视图和表不同 视图数目没有限制 可…
<SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语句,但是实际应用中的业务逻辑往往会非常复杂,所以会用到一些比较复杂的查询,如子查询,联合查询. 1.子查询 当一个查询是另一个查询的条件时,称为子查询.但是说到子查询又不的不说它与嵌套查询两者的区别,下面一张图来说明 下面再用一条sql语句来说明他们的关系. 其中在查询中又分为嵌套子查询和相关子查询,他们之间…
一.SQL语句语法 ALTER TABLE ALTER TABLE 用来更新已存在表的结构. ALTER TABLE tablename (ADD|DROP column datatype [NULL|NOT NULL] [CONSTRAINTS], ... ); COMMIT COMMIT 用来将事物写入数据库. COMMIT [TRANSACTION]; CREATE INDEX CREATE INDEX 用于在一个或多个列上创建索引. CREATE INDEX indexname ON t…
上个笔记主要介绍了利用SELECT语句检索单个/多个/所有列,并利用DISTINCT关键字检索具有唯一性的值.利用LIMIT/OFFSET子句限制结果:以及利用ORDER BY子句排序检索出的数据,主要有按照单个/多个列名/列位置/混合排序.用DESC关键字指定排序方向. 这一次我们来看一下如何使用SELECT语句的WHERE子句来指定搜索条件进行数据过滤,包括使用=.>.<等基础操作符的基础数据过滤:使用AND.OR.IN.NOT操作符的高级数据过滤:以及使用%._.[]通配符的数据过滤操作…
上个笔记中介绍了一些关于数据库.SQL的基础知识,并且创建我们后续练习所需的数据库.表以及表之间的关系,从本文开始进入我们的正题:SQL语句的练习. 文章目录 1.检索数据(SELECT语句) 1.1 检索列 1.2 检索不同的值(DISTINCT) 1.3 限制结果(LIMIT.OFFSET)(DBMS:MySQL) 1.4 使用注释(--.#./* */) 2.排序检索数据(ORDER BY子句) 2.1 按列名排序数据 2.2 按列位置排序 2.3 指定排序方向 正如上个笔记中所说,SQL…
文章目录 1.数据库基础 1.1 数据库(database) 1.2 表(table) 1.3 列和数据类型 1.4 行 1.5 主键 2.什么是SQL 3.创建后续练习所需数据库.表(MySQL8.0.16) 3.1 创建数据库 3.2 创建数据库表 3.2.1开始创建数据库表 3.2.2 为各表定义主.外键约束 3.3 插入数据 1.数据库基础 SQL是一种专门用来与数据库沟通的语言,因此在学习SQL之前,我们应该对数据库和数据库技术的某些基本概念有所了解. 本节主要介绍数据库及数据库技术的…
简介 本笔记目前已包含 <SQL必知必会>中的所有章节. 我在整理笔记时所考虑的是:在笔记记完后,当我需要查找某个知识点时,不需要到书中去找,只需查看笔记即可找到相关知识点.因此在整理笔记时力求全面与简洁,能够在查找时快速找到并迅速理解. 在此基础上,笔记已整理的内容是对书中内容的提炼,包括了我在学习时所认为的书中所有有用的知识点,因此每章的笔记内容都比较多. 笔记适用对象 看过一遍<SQL必知必会>,可以查看本笔记对学习内容进行复习和梳理. 正在看<SQL必知必会>,…