SQL是一种数据库计算机语言,用于检索和管理关系数据库中的数据。 SQL代表结构化查询语言(英文:Structured Query Language),SQL(结构化查询语言)用于对存储在数据库中的记录执行操作,例如:更新记录,删除记录,创建和修改表,视图等。
面向读者
本教程是为初学者和专业人士准备的,以帮助他们理解与SQL语言相关的基本概念和高级概念。 本教程将让您充分了解SQL的各个组件并提供相应的示例。它涵盖了对SQL的基本理解SQL所需的相关主题,并了解它的工作原理。
前提条件
在开始练习本教程中给出的各种类型的示例之前,假设读者已经了解数据库是什么,尤其是数据库系统(RDBMS)以及什么是计算机编程语言。
SQL只是一种查询语言,它不是数据库。 要执行SQL查询,您需要安装数据库,例如:Oracle,MySQL,MongoDB,PostGreSQL,SQL Server,DB2等。
问题反馈
我们不能保证您在学习此SQL教程的过程中不会遇到任何问题。本教程中的讲解,示例和代码等只是根据作者的理解来概括写出。由于作者水平和能力有限,因此不保正所有编写的文章都准确无误。但是如果有遇到任何错误或问题,请反馈给我们,我们会及时纠正以方便后续读者阅读。
教程目录
本SQL教程通过许多实际应用的示例帮助读者快速有效地开始学习使用SQL。
如果是使用SQL分析数据的软件开发人员,数据库管理员,数据分析师或数据科学家,那么本教程是一个很好的开始。
每个主题都通过许多实际示例清晰简明地介绍,以便您可以真正理解概念并知道如何应用它来更有效地解决数据问题。
请参考以下组织的各个小节开始学习。
第1节:SQL简介
- 什么是SQL - 简要介绍一下SQL语言及其流行的SQL方言。
- SQL语法 - 提供SQL语言的语法。
- SQL示例数据库 - 向介绍HR示例数据库。
- SQL语法 - SQL是一组语法的独特规则和准则。 本教程通过列出所有基本SQL语法,为读者提供SQL快速入门。
第2节:查询数据
- SELECT语句 - 演示如何使用最简单的
SELECT
语句从单个表中查询数据。
第3节:排序数据
- ORDER BY子句 - 按升序和/或降序对一列或多列数据进行排序。
第4节:过滤数据
- DISTINCT - 演示如何从结果集中删除重复项。
- LIMIT - 使用
LIMIT
和OFFSET
子句约束查询返回的行数。 - FETCH - 学习如何在开始返回任何行之前跳过结果集中的
N
行。 - WHERE子句 - 根据指定条件过滤数据。
- 比较运算符 - 学习如何使用比较运算符,包括大于,大于或等于,小于,小于或等于,等于,不等于形成WHERE子句中的条件。
- 逻辑运算符 - 介绍逻辑运算符以及如何使用它们来测试条件的真实性。
- AND运算符 - 使用AND逻辑运算符组合多个布尔表达式。
- OR运算符 - 演示如何使用另一个逻辑运算符OR来组合多个布尔表达式。
- BETWEEN运算符 - 指导您使用
BETWEEN
运算符选择值范围内的数据。 - IN运算符 - 演示如何使用IN运算符检查值是否在值列表中。
- LIKE运算符 - 基于指定模式查询数据。
- IS NULL运算符 - 介绍
NULL
概念并演示如何检查表达式是否为NULL。 - NOT运算符 - 演示如何使用
NOT
运算符否定布尔表达式。
第5节:连接多个表
- SQL别名 - 使查询更短,更易理解。
- INNER JOIN - 介绍连接概念,并演示如何使用
INNER JOIN
子句组合来自多个表的数据。 - LEFT OUTER JOIN - 提供另一种连接,用于组合来自多个表的数据。
- FULL OUTER JOIN - 通过包含两个表中的行来连接多个表,无论这些行是否具有来自另一个表的匹配行。
- CROSS JOIN - 使用交叉连接操作生成连接表行的笛卡尔积。
- SELF JOIN - 使用内部联接或左联接子句将表连接到自身。
第6节:聚合函数
- 聚合函数概述 - 介绍SQL中最常用的聚合函数,包括:
AVG
,COUNT
,SUM
,MAX
和MIN
。 - AVG - 计算集合的平均值。
- COUNT - 返回集合中的项目数量。
- SUM - 返回集合中所有或不同项目的总和。
- MAX - 查找集合中的最大值。
- MIN - 查找集合中的最小值。
第7节:分组数据
- GROUP BY - 将行组合成组并将聚合函数应用于每个组。
- HAVING - 指定过滤
GROUP BY
子句汇总的组的条件。 - GROUPING SETS - 生成多个分组集。
- ROLLUP - 考虑输入列的层次结构生成多个分组集。
第8节:使用SET运算符
- UNION和UNION ALL - 使用
UNION
和UNION ALL
运算符将两个或多个查询的结果集合并到一个结果集中。 - INTERSECT - 使用
INTERSECT
运算符返回两个或多个查询的交集。 - MINUS - 使用
MINUS
运算符从另一个结果集中减去结果集。
第9节:子查询
- 子查询 - 演示如何在另一个查询中嵌套查询,以形成更灵活的查询数据查询。
- 相关子查询 - 介绍相关子查询,子查询是使用外部查询中的值的子查询。
- EXISTS - 演示如何检查从子查询返回的行的存在。
- ALL - 说明如何通过将表的列中的值与一组列进行比较来查询数据。
- ANY - 如果表的列中的值与集合中的值之一匹配,则查询数据。
第10节:约束
- PRIMARY KEY - 演示如何为表定义主键。
- FOREIGN KEY - 引导如何使用外键约束强制执行两个表中数据之间关系的步骤。
- UNIQUE - 确保列或列集中值的唯一性。
- NOT NULL - 确保插入或更新到列的值不为
NULL
。 - 检查约束 - 在数据基于布尔表达式存储在一列或多列中之前验证数据。
- SQL逻辑运算符
- SQL比较运算符
- SQL算术运算符
- SQL UPPER()函数
- SQL UNHEX()函数
- SQL UCASE()函数
- SQL TRIM()函数
- SQL SUBSTRING_INDEX()函数
- SQL SUBSTRING()函数
- SQL STRCMP()函数
- SQL SPACE()函数
- SQL SOUNDEX()函数
- SQL RPAD()函数
- SQL RIGHT()函数
- SQL REVERSE()函数
- SQL REPLACE()函数
- SQL REPEAT()函数
- SQL REGEXP模式
- SQL QUOTE()函数
- SQL POSITION()函数
- SQL ORD()函数
- SQL OCTET_LENGTH()函数
- SQL OCT()函数
- SQL MID()函数
- SQL MAKE_SET()函数
- SQL LTRIM()函数
- SQL LPAD()函数
- SQL LOWER()函数
- SQL LOCATE()函数
- SQL LOAD_FILE()函数
- SQL LENGTH()函数
- SQL LEFT()函数
- SQL LCASE()函数
- SQL INSTR()函数
- SQL INSERT()函数
- SQL HEX()函数
- SQL FORMAT()函数
- SQL FIND_IN_SET()函数
- SQL FIELD()函数
- SQL EXPORT_SET()函数
- SQL ELT()函数
- SQL CONV(N,from_base,to_base)函数
- SQL CONCAT_WS()函数
- SQL字符串CONCAT()函数
- SQL CHARACTER_LENGTH()函数
- SQL CHAR_LENGTH()函数
- SQL CHAR()函数
- SQL BIT_LENGTH()函数
- SQL BIN(N)函数
- SQL ASCII(str)函数
- SQL字符串函数
- SQL TRUNCATE()函数
- SQL TAN(X)函数
- SQL STD()函数
- SQL SQRT(X)函数
- SQL SIN(X)函数
- SQL SIGN(X)函数
- SQL ROUND()函数
- SQL RADIANS()函数
- SQL POW()函数
- SQL PI()函数
- SQL OCT(N)函数
- SQL MOD()函数
- SQL LOG10(X)函数
- SQL LOG()函数
- SQL LEAST()函数
- SQL INTERVAL()函数
- SQL GREATEST()函数
- SQL FORMAT(X,D)函数
- SQL FLOOR(X)函数
- SQL EXP(X)函数
- SQL DEGREES()函数
- SQL COT()函数
- SQL COS()函数
- SQL CONV()函数
- SQL CEIL()函数
- SQL BIT_OR()函数
- SQL BIT_COUNT()函数
- SQL BIT_AND()函数
- SQL ATAN2()函数
- SQL ATAN(X)函数
- SQL ASIN(X)函数
- SQL ACOS()函数
- SQL ABS()函数
- SQL数值函数
- SQL CONCAT()函数
- SQL RAND()函数
- SQL SQRT()函数
- SQL SUM()函数
- SQL AVG()函数
- SQL MIN()函数
- SQL MAX()函数
- SQL实用函数
- SQL注入
- SQL DISTINCT重复处理
- SQL使用序列(自动递增)
- SQL子查询
- SQL克隆表
- SQL临时表
- SQL YEARWEEK()函数
- SQL YEAR()函数
- SQL WEEKOFYEAR()函数
- SQL WEEKDAY()函数
- SQL WEEK()函数
- SQL UTC_TIMESTAMP()函数
- SQL UTC_TIME()函数
- SQL UTC_DATE()函数
- SQL UNIX_TIMESTAMP()函数
- SQL TO_DAYS()函数
- SQL TIME_TO_SEC()函数
- SQL TIME_FORMAT()函数
- SQL TIMESTAMPDIFF()函数
- SQL TIMESTAMPADD()函数
- SQL TIMESTAMP()函数
- SQL TIMEDIFF()函数
- SQL TIME()函数
- SQL SYSDATE()函数
- SQL SUBTIME()函数
- SQL SUBDATE()函数
- SQL STR_TO_DATE()函数
- SQL SEC_TO_TIME()函数
- SQL SECOND()函数
- SQL QUARTER()函数
- SQL PERIOD_DIFF()函数
- SQL PERIOD_ADD()函数
- SQL NOW()函数
- SQL MONTHNAME()函数
- SQL MONTH()函数
- SQL MINUTE()函数
- SQL MICROSECOND()函数
- SQL MAKETIME()函数
- SQL MAKEDATE()函数
- SQL LOCALTIMESTAMP和LOCALTIMESTAMP()函数
- SQL LOCALTIME和LOCALTIME()函数
- SQL LAST_DAY()函数
- SQL HOUR()方法
- SQL FROM_UNIXTIME()函数
- SQL FROM_DAYS()函数
- SQL EXTRACT()函数
- SQL DAYOFYEAR()函数
- SQL DAYOFWEEK()函数
- SQL DAYOFMONTH()函数
- SQL DAYNAME()函数
- SQL DAY()函数
- SQL DATE_SUB()方法
- SQL DATE_FORMAT()函数
- SQL DATE_ADD()和DATE_SUB()方法
- SQL DATEDIFF()方法
- SQL DATE(expr)函数
- SQL CURRENT_TIMESTAMP()方法
- SQL CURRENT_TIME()函数
- SQL CURTIME()函数
- SQL CURRENT_DATE()函数
- SQL CURDATE()函数
- SQL CONVERT_TZ()函数
- SQL ADDTIME()函数
- SQL ADDDATE()函数
- SQL日期函数
- SQL通配符运算符
- SQL事务
- SQL Having子句
- SQL View(视图)
- SQL TRUNCATE TABLE(截断表)
- SQL ALTER TABLE(修改表)
- SQL索引
- SQL别名语法
- SQL EXCEPT子句
- SQL INTERSECT子句
- SQL UNION子句/操作符
- SQL笛卡尔或交叉连接
- SQL自连接
- SQL FULL JOIN(全连接)
- SQL RIGHT JOIN(右连接)
- SQL LEFT JOIN(左连接)
- SQL INNER JOIN(内部连接)
- SQL Join联接
- SQL约束
- SQL排序结果
- SQL Distinct关键字
- SQL GROUP BY(分组)
- SQL ORDER BY排序子句
- SQL TOP,LIMIT,ROWNUM子句
- SQL LIKE子句
- SQL DELETE删除查询
- SQL UPDATE更新查询
- SQL AND和OR运算符
- SQL WHERE子句
- SQL SELECT查询语句
- SQL INSERT INTO插入查询
- SQL删除表(DROP或DELETE Table)
- SQL从现有表创建表
- SQL创建表(CREATE Table)
- SQL选择数据库(SELECT Database, USE语句)
- SQL丢弃或删除数据库(DROP DATABASE)
- SQL创建数据库(CREATE DATABASE)
- SQL表达式
- SQL逻辑运算符
- SQL比较运算符
- SQL算术运算符
- SQL操运算符
- SQL数据类型
- SQL语法
- SQL RDBMS数据库
- 数据库 - 第三范式(3NF)
- 数据库 - 第二范式(2NF)
- 数据库 - 第一范式(1NF)
- SQL NULL值
- SQL索引约束
- SQL CHECK约束
- SQL外键
- SQL主键
- SQL唯一约束
- SQL DEFAULT约束
- SQL NOT NULL约束
- SQL RDBMS概念
易百教程移动端:请扫描本页面底部(右侧)二维码并关注微信公众号,回复:"教程" 选择相关教程阅读或直接访问:http://m.yiibai.com 。
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。