SQL

Eric讨论 | 贡献2020年10月21日 (三) 06:12的版本

SQL(Structured Query Language,结构化查询语言),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

SQL基于关系代数和元组关系演算。SQL的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。

简介

时间轴

  • 1970年代初,由IBM公司San Jose,California研究实验室的埃德加·科德发表将数据组成表格的应用原则(Codd's Relational Algebra)。
  • 1974年,同一实验室的D.D.Chamberlin和R.F. Boyce对Codd's Relational Algebra在研制关系数据库管理系统System R中,研制出一套规范语言-SEQUEL(Structured English Query Language)
  • 1976年11月,IBM Journal of R&D上公布新版本的SQL(叫SEQUEL/2)
  • 1979年,ORACLE公司首先提供商用的SQL,IBM公司在DB2和SQL/DS数据库系统中也实现了SQL。
  • 1980年,改名为SQL。
  • 1986年10月,美国ANSI采用SQL作为关系数据库管理系统的标准语言(ANSI X3. 135-1986),后为国际标准化组织(ISO)采纳为国际标准。
  • 1989年,美国ANSI采纳在ANSI X3.135-1989报告中定义的关系数据库管理系统的SQL标准语言,称为ANSI SQL 89,该标准替代ANSI X3.135-1986版本。

SQL优点

  • SQL不是某个特定的DBMS(数据库管理系统)的专有语言,几乎所有重要的DBMS如:Oracle、DB2、MySQL、Microsoft SQL Server、SQLite等都支持SQL。
  • SQL简单易学

基础知识

数据库基本概念

名称 英文 描述
数据库管理系统 Database Management System 简称DBMS,管理数据库的软件,常见有:MySQLSQLitePostgreSQLMicrosoft SQL Server等。
数据库 database
table
列或字段 column 属性Attribute
row
主键
外键


查询数据

基本查询

选取数据 语法 描述
选取单表所有数据 SELECT * FROM 表名; * 号为通配符
选取单列数据 SELECT 列名 FROM 表名;
选取多列数据 SELECT 列名1, 列名2, 列名3 FROM 表名; 列名用逗号隔开,最后一个列名不加逗号。

排序

条件查询

单条件

组合条件

使用通配符

查询并处理数据

生成计算字段

汇总数据

使用函数处理

修改数据

插入数据

更新数据

删除数据

资源

网站

相关网站

书籍

  • 《SQL必知必会》第四版-Ben Forta

参考文献