本系列记录并分享学习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必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> MySQL MySQL - HomePage Wiki - MySQL 在CentOS7系统中安装MySQL5.7 01-确认系统版本 # uname -a Linux CentOS-7 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64…
12.1 联结 联结(join),利用SQL的SELECT在数据查询的执行中联结表. 12.1.1 关系表 关系数据库中,关系表的设计是把信息分解成多个表,一类数据一个表,各表通过某些共同的值互相关联. 这样设计的目的是为了使数据库或应用程序具备良好的可伸缩性(scale well). 可伸缩(scale),能够适应不断增加的工作量而不失败. ** 12.1.2 为什么使用联结** 使用联结(join),可以在一条SELECT语句检索出存储在多个表中的数据.简而言之,联结就是在一条SELECT语…
一.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…
第1课 数据库 这一课介绍SQL究竟是什么,它能做什么事情.   1.1 数据库基础 下面是一些数据库概念的简要介绍,如果你刚开始接触数据库,可以由此了解必需的基本知识.   1.1.1 数据库 数据库这个术语的用法很多,但就本书而言(从SQL的角度来看),数据库是一个以某种有组织的方式存储的数据集合.最简单的办法是将数据库想象为一个文件柜.这个文件柜是一个存放数据的物理位置,不管数据是什么,也不管数据是如何组织的.  数据库(database) 保存有组织的数据的容器(通常是一个文件或一组文件…
第1课 了解SQL 简单介绍了sql,和dbms,无重点. 第2课 检索数据 重点:select语句,distinct,limit,注释 1. select 语句如果没有明确排序查询结果,那么返回的数据没有特定的顺序.返回数据的顺序可能是数据被添加到表中的顺序,也可能不是.只要返回相同数目的行,就是正常的. 2. 多条 SQL 语句必须用 ; (分号)分隔. 3. SQL不区分大小写 4. SQL语句分行可读性更好 5. 最好不要使用 * 这种通配符 select 表中所有的列 6. disti…
MySQL备忘 目录 目录 使用MySQL 检索数据 排序检索数据 过滤数据 数据过滤 用通配符进行过滤 用正则表达式进行搜索 创建计算字段 使用数据处理函数 数值处理函数 汇总数据 分组数据 使用子查询 作为计算字段使用子查询 联结表 创建高级联结 组合查询 全文本搜索 插入数据 更新和删除数据 使用MySQL mysql -u<usr> -p -h<host> -P <port> 分别指明用户名,主机名,端口号 show columns from <table…
以前对mysql的认识与应用只是停留在增删改查的阶段,最近正好在学习mysql相关内容,看了一本书叫做<MySQL必知必会>,看了之后对MySQL的高级用法有了一定的了解.以下内容只当读书笔记. 如有转载请注明出处~ 存储过程的使用 执行存储过程 CALL productpricing() 执行名为productpricing的存储过程 创建存储过程 CREATE PROCEDURE productpricing() BEGIN SELECT avg(prod_price) AS pricea…
<SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语句,但是实际应用中的业务逻辑往往会非常复杂,所以会用到一些比较复杂的查询,如子查询,联合查询. 1.子查询 当一个查询是另一个查询的条件时,称为子查询.但是说到子查询又不的不说它与嵌套查询两者的区别,下面一张图来说明 下面再用一条sql语句来说明他们的关系. 其中在查询中又分为嵌套子查询和相关子查询,他们之间…