写在前面关于这本书:SQL的基础教程,可以使你在SQL的学习中轻松实现从0到1的过程,循序渐进地掌握SQL的基础知识和技巧。对于零基础来说非常友好,看完能够迅速上手SQL。

关于本文:一篇对这本书的知识点进行梳理总结的文章。无论你是否看过这本书,都可以对照本文梳理SQL的基础知识,查漏补缺,巩固知识。

系列文章第一篇,包含该书第1-3章的23个知识点。

*本文代码均基于MySQL环境。

第1章 数据库和SQL

1. SQL语句及种类

DDL 数据定义语言:CREATE/DROP/ALTER

DML 数据操纵语言:SELECT/INSERT/UPDATE/DELETE

DCL 数据控制语言:COMMIT/ROLLBACK/GRANT/REVOKE

2. 数据库的创建

CREATE DATABASE ;

3. 表的创建

CREATE TABLE

( ,

,

……

,……);

4. 数据类型的指定

INTEGER型:整数

CHAR型:字符串

VARCHAR型:可变长字符串

DATE型:日期

5. 约束的设置

NOT NULL:代表空白(无记录)的关键字

PRIMARY KEY:主键约束

6. 表的删除

DROP TABLE ;

7. 表定义的更新

ALTER TABLE ADD COLUMN   ;

ALTER TABLE DROP COLUMN ;

8. 向表中插入数据

START TRANSACTION

INSERT INTO VALUES (<>,<>,<>)

COMMIT

9.变更表名

RENAME TABLE TO ;

第2章 查询基础

10. 查询基本语句

SELECT ……

FROM

WHERE ;

--SELECT * 表示查询所有列

--可以用AS为列设置别名

--不能在WHERE子句中使用聚合

11. 从结果中删除重复行

DISTINCT--只能用在第一个列名前

12. 注释的书写方法

1行注释:写在‘--’之后,只能写在同一行

多行注释:写在“ /* ” 和 “ */ ” 之间,可以跨多行

13. 算数运算符

+,-,*,/

14. 比较运算符

=,<>(不等于), >=, <=, >, <

--注意对字符串使用不等号时,是按照字典顺序进行排序的

15. 注意NULL

包含NULL的计算结果也是NULL

不能对NULL使用比较运算符,要用 IS NULL 或者 IS NOT NULL

16. 逻辑运算符

NOT:用于否定某一条件

AND:在其两侧的查询条件都成立时整个查询条件才成立

OR:在其两侧的查询条件有一个成立时整个查询条件都成立

--AND运算符优先于OR运算符,想要优先执行OR运算符时需要使用括号

第3章 聚合与排序

17. 聚合函数

COUNT:计算表中的记录数(行数)

SUM:计算表中数值列中数据的合计值

AVG:计算表中数值列中数据的平均值

MAX:计算表中数值列中数据的最大值

MIN:计算表中数值列中数据的最小值

--COUNT(*)包含NULL的数据行数,COUNT不包含NULL

--SUM,AVG会排除NULL,只适用于数值类型的列

--MAX,MIN适用于几乎所有的数据类型

18. 在聚合函数的参数中使用DISTINCT,可以删除重复数据。

SELECT COUNT(DISTINCT )

FROM ;

--计算去除重复数据后的数据行数

SELECT DISTINCT COUNT()

FROM ;

--先计算数据行数再删除重复数据的结果

SELECT SUM(DISTINCT )

FROM ;

--删除重复数据后进行数据汇总

19. GROUP BY 子句

SELECT ,,,......

FROM

GROUP BY ,,, ...... ;

--聚合建中包含NULL时,在结果中会以空行的形式表现出来

20.GROUP BY 和 WHERE 并用时执行顺序

FROM--->WHERE--->GROUP BY--->SELECT

21.HAVING子句

SELECT ,,,......

FROM

GROUP BY ,,, ...... ;

HAVING

WHERE子句=指定行所对应的的条件

HAVING子句=指定组所对应的条件

22.ORDER BY 子句

SELECT ,,,......

FROM

ORDER BY ,,......

--排序键中包含NULL时,会在开头或末尾进行汇总

--可以使用SELECT子句中定义的别名

--可以使用SELECT子句中未使用的列和聚合函数

23.指定升序或者降序

在排序基准列后面使用

DESC:降序排列

ASC:升序排列

小结

本文整理了SQL基础教程第1-3章的知识点。1-3章的知识围绕数据库的建立,表的增删改查展开,介绍了基础的算数运算符,逻辑运算符,比较运算符,聚合函数,以及分组,排序的使用。

这三章的知识是运用SQL的基础,可以通过本文常常温习,巩固。

@ 作者:叶遇

@ 头条号/公众号:叶遇江湖

@ 微博/B站:叶遇MeSta

热爱学习,喜欢文具,分享知识和生活。

sql基础教程和mysql基础教程_书评「SQL基础教程(第2版)」| 你应该知道的基础知识点梳理·上...相关推荐

  1. mysql bitand函数_有趣的SQL(一)

    原标题:有趣的SQL(一) 大家都想提高自己的SQL能力,但是SQL能力也是需要慢慢提高的,为了让大家的SQL有所提高,特整理了下面的SQL. 需求:如下所示,有从1开始的2的幂的数组 - - 1, ...

  2. 宝塔建站 mysql在哪_宝塔面板建站教程,越详细越好纯小白! - 搜外问答

    我的网站就是用宝塔添加的网站: 宝塔面板创建站点添加网站的详细教程. 宝塔 Linux 面板创建站点添加网站常规方法 1.登录宝塔 linux 面板 >> 网站 >> 添加站点 ...

  3. mysql分布式数据库_分布式数据库搭建详细教程

    由于业务本身的需求,有时需要构建分布式数据库.一个具有较好设计的分布式数据库,对于用户(调用者)来说透明,跟使用本地数据库一样. 本文准备使用中间件的架构,实现分布式数据库的构建.简单点说,调用者与中 ...

  4. mysql如何建网站_新手建站入门教程⑨:如何建一个门户网站

    而且用博客程序建立的文章网站永远看上去都是个博客,可自定义的东西不是那么多,比如有的人比较想做一个大一点的门户网站,改怎么来做呢?今天我就来告诉你. 其实要建立一个门户网站也是一样不难,哪怕是你要建一 ...

  5. mysql测试题汇总_总结:SQL练习【SQL经典练习题】

    好像今天圣诞节 刚刷完SQL练习[SQL经典练习题],本篇文章将对我不牢固的知识做简单汇总. 没对比就没标准,当练习超经典SQL练习题,做完这些你的SQL就过关了时才知道自己以前练习的SQL是最基础的 ...

  6. mysql监测攻击_如何检测SQL注入技术以及跨站脚本攻击

    展开全部 在最近两年中,安全专家应该对网络应用层的攻击更加重e69da5e887aa62616964757a686964616f31333339666164视.因为无论你有多强壮的防火墙规则设置或者非 ...

  7. MySQL优化系列_常见的sql使用-Mysql中的实践(Mysql优化系列8)

    看完了工具,死磕算法,那么怎么从算法和工具去解决我们忽略的用法呢,下面我们来个小试牛刀. 表table employees (id,name,age,position )几个字段 name, age, ...

  8. mysql开窗函数_魔幻的SQL开窗函数,为您打开进阶高手的一扇天窗

    经常写SQL脚本的朋友,通常会有一种迷之自信,似乎各种问题都有自己的一套解决方案.时间长了,人的思维可能会逐渐固化.思维固化能提高工作效率,但从某些角度看是很可怕的,我们也同时会失去接受新知识的内在动 ...

  9. 从mysql读取图片_如何从sql数据库内读取图片

    privatevoidSHOW(){MemoryStreamstream=newMemoryStream();byte[]buffByte=null;stringsqlstr="select ...

最新文章

  1. 机器学习与高维信息检索 - Note 1 - 信息检索、机器学习与随机变量
  2. 输入空格hdu - 1010 - Tempter of the Bone
  3. 使用 Elixir 开发嵌入式系统: 使用DS18B20传感器测量体温
  4. 【C++ 语言】异常 ( 抛出字符串异常 | 抛出异常对象 | 抛出任意对象 | 抛出自定义异常 )
  5. Android测试分析3
  6. 谷歌浏览器怎么重发请求_chrome 浏览器的预提取资源机制导致的一个请求发送两次的问题以及ClientAbortException异常...
  7. c++正确处理 is-a has-a关系
  8. go语言基础之格式化输出
  9. 微软企业库5.0学习笔记(三十三)数据访问模块
  10. 2018-6-19bash编程之循环
  11. JavaScript String 对象、Math 对象使用详解
  12. hive中的集合操作函数
  13. 天气预报城市代码对应表
  14. SketchUp 2019 组件库的正确应用
  15. C# 测试网络速度例子
  16. 北大先修课 计算机,北大先修课
  17. Mac下的平铺式桌面 - Yabai
  18. python新手入门-------字符串与函数(3)
  19. 算法还原练习-20160920
  20. scrapy爬虫没有任何的返回数据( Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min))

热门文章

  1. 重磅!谷歌刚刚发布Objectron新数据集,可完美检测3D目标,超过4百万幅图像和15K视频剪辑!...
  2. 一种用于三维物体建模的精确、鲁棒的距离图像配准算法
  3. 进程上下文和中断上下文
  4. win10系统搭建Tensorflow深度学习平台详细步骤
  5. python批处理修改文件的名字
  6. 如何在内嵌 css 中编写: hover_优秀 CSS 代码的 8 个编写技巧!
  7. showdialog 尝试读取或写入受保护的内存_共享内存在不同系统的应用与优劣详解...
  8. Microbiome:城环所杨军组-小幅盐度变化改变了城市水库微型真核浮游生物群落的构建过程和网络稳定性...
  9. ISME:中科院微生物所揭示细菌利用光能新机制!
  10. ISME:南农沈其荣团队基于大数据准确预测土壤的枯萎病发生