一、SQL的简介
Structured Query Language,即结构化查询语言,它是用于在关系型数据库管理系统中操作数据的标准化语言。SQL语言的出现是为了解决传统的文件存储系统难以管理和维护数据的问题。
SQL语言能够实现的功能包括:数据的查询、更新、删除以及插入等操作。同时,它也可以调用存储在数据库中的数据,执行事务控制和嵌入式处理等功能。SQL是一种非过程化的语言,用户只需要定义需要求解的问题和结果,而不需要告诉计算机如何实现它。
SQL具有可移植性、易学易用、高效、安全、灵活等优点,在各种类型的应用程序中都得到了广泛的应用。下面将介绍SQL的基本语法。
二、SQL语法
1. 创建表
CREATE TABLE
语句用来创建新表,指定列名及其数据类型,如下所示:
CREATE TABLE student
(
id INT PRIMARY KEY NOT NULL,
name TEXT NOT NULL,
age INT NOT NULL,
sex CHAR(10)
);
CREATE TABLE 后面跟表的名称,括号内定义表中的列名、数据类型、是否允许空值以及约束条件等信息。本例中,id、name 和 age 都是列名,其数据类型分别为整型、文本和整型,均不能为 NULL,而 sex 列的数据类型为字符类型,最大长度为10。
2. 插入数据
INSERT INTO
语句用于将一行或多行数据插入到表中:
INSERT INTO student (id, name, age, sex) VALUES (1, 'Tom', 18, 'male');
INSERT INTO student (id, name, age, sex) VALUES (2, 'Lucy', 17, 'female');
在 SQL 中,唯一的标识符是列名,因此我们需要指定插入哪些列,以及这些列的值:
3. 查询数据
SELECT
语句用于从表中获取数据:
SELECT * FROM student;
上述语句将返回 student 表中所有的数据。
SELECT 语句可以使用 WHERE 子句来限制结果集:
SELECT * FROM student WHERE age >= 18;
上述语句返回 student 表中年龄大于等于18岁的所有行。
4. 更新数据
UPDATE
语句用于更新表中的数据:
UPDATE student
SET name='Jerry', age=20
WHERE id=1;
上述语句将 student 表中 id 为1的行的 name 改为 Jerry,age 修改为 20。
5. 删除数据
DELETE FROM
语句用于删除表中的数据:
DELETE FROM student WHERE id=1;
上述语句将从 student 表中删除 id 为1的记录。
6. 聚合函数
SQL支持多种聚合函数,如SUM、AVERAGE、COUNT等。以下是 COUNT 函数的示例:
SELECT COUNT(*) FROM student;
上述语句将返回 student 表中的行数。
7. 分组
用 GROUP BY 子句来将行分组为多个集合。
SELECT sex, COUNT(*) FROM student GROUP BY sex;
上述语句将 student 表中的行按照 sex 列的值来分组,并返回每个分组中的行数。
8. 排序
可用 ORDER BY 子句对结果集按照指定的列进行排序。
SELECT * FROM student ORDER BY age DESC;
上述语句将返回 student 表中的所有行,并按照 age 列的值进行降序排序。
9. 连接
用 JOIN 子句来连接两个或多个表。
以下是两个表的示例:
CREATE TABLE course
(
cid INT PRIMARY KEY NOT NULL,
cname TEXT NOT NULL,
teacher TEXT NOT NULL
);
INSERT INTO course (cid, cname, teacher) VALUES (1, 'Math', 'Tom');
INSERT INTO course (cid, cname, teacher) VALUES (2, 'English', 'Jerry');
INSERT INTO course (cid, cname, teacher) VALUES (3, 'History', 'Lucy');
SELECT * FROM student JOIN course ON student.id=course.cid;
上述语句将 student 和 course 两个表连接在一起,返回所有 student 表中 id 值与 course 表中 cid 值相等的行。
10. 删除表及其内容
DROP TABLE
语句用于删除表及其内容。
DROP TABLE student;
上述语句将从数据库中删除 student 表。
三、总结
本文介绍了 SQL 的基本语法,包括创建表、插入数据、查询数据、更新数据、删除数据、聚合函数、分组、排序、连接、删除表及其内容等操作。SQL 是一种标准化的语言,易于学习,同时也具有高效、灵活、安全等优点。希望读者可以通过本文的介绍,更好地掌握 SQL 语言的使用。