导语:数据库在现代软件开发中扮演着至关重要的角色。掌握数据库基本语言是每位程序员和数据库管理员必备的技能。本文将带您了解数据库基本语言,助您快速入门。
一、数据库基本概念
在介绍数据库基本语言之前,我们先了解一下数据库的基本概念。
-
数据库(Database):存储数据的仓库,用于存储、检索、管理和处理数据。
-
数据表(Table):数据库中的基本单位,用于存储具有相同类型的数据。
-
字段(Column):数据表中的列,用于表示数据的属性。
-
记录(Row):数据表中的行,用于表示一条数据。
-
主键(Primary Key):用于唯一标识表中每条记录的字段。
二、SQL简介
SQL(Structured Query Language,结构化查询语言)是用于管理和处理数据库的标准计算机语言。以下是SQL的基本操作:
- 数据定义语言(DDL)
DDL用于创建、修改和删除数据库中的表格结构。
(1)创建表格:
CREATE TABLE 表名 (
字段1 数据类型,
字段2 数据类型,
……
);
示例:
CREATE TABLE student (
id INT PRIMARY KEY,
name VARCHAR(20),
age INT,
gender VARCHAR(10)
);
(2)修改表格:
ALTER TABLE 表名 ADD/DROP/ALTER COLUMN 字段名 数据类型;
示例:
ALTER TABLE student ADD COLUMN tel VARCHAR(20);
(3)删除表格:
DROP TABLE 表名;
示例:
DROP TABLE student;
- 数据操纵语言(DML)
DML用于插入、更新、删除和查询数据库中的数据。
(1)插入数据:
INSERT INTO 表名 (字段1, 字段2, ……) VALUES (值1, 值2, ……);
示例:把张三的数据插入到学生表里面
INSERT INTO student (id, name, age, gender) VALUES (1, '张三', 18, '男');
(2)更新数据:
UPDATE 表名 SET 字段1=值1, 字段2=值2, …… WHERE 条件;
示例:把学号为1的学生年龄改为19
UPDATE student SET age=19 WHERE id=1;
(3)删除数据:
DELETE FROM 表名 WHERE 条件;
示例:删除学号为1的学生
DELETE FROM student WHERE id=1;
(4)查询数据:
SELECT 字段1, 字段2, …… FROM 表名 WHERE 条件;
示例:查询年龄大于18岁的学生
SELECT * FROM student WHERE age>18;
四、SQL的高级数据查询
- 联合查询(UNION)
联合查询可以将多个SELECT语句的结果集合并成一个结果集,需要注意的是,这些SELECT语句必须拥有相同数量的列。
示例:
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
- 连接查询(JOIN)
连接查询用于根据两个或多个表中的相关列之间的关系,从这些表中查询数据。
(1)内连接(INNER JOIN)
内连接返回两个表中匹配的行。
示例:
SELECT table1.column, table2.column
FROM table1
INNER JOIN table2
ON table1.common_column = table2.common_column;
(2)左连接(LEFT JOIN)
左连接返回左表(table1)的所有行,即使右表(table2)中没有匹配的行。
示例:
SELECT table1.column, table2.column
FROM table1
LEFT JOIN table2
ON table1.common_column = table2.common_column;
(3)右连接(RIGHT JOIN)
右连接返回右表(table2)的所有行,即使左表(table1)中没有匹配的行。
示例:
SELECT table1.column, table2.column
FROM table1
RIGHT JOIN table2
ON table1.common_column = table2.common_column;
- 子查询
子查询是指在一个查询语句中嵌套另一个查询语句。
示例:
SELECT column_name(s)
FROM table1
WHERE column_name IN (SELECT column_name FROM table2);
五、SQL的聚合函数
聚合函数用于对数据库中的数据进行计算,并返回单个值。
- COUNT():返回表中行的数量。
示例:
SELECT COUNT(*) FROM table_name;
- SUM():返回指定列的总和。
示例:
SELECT SUM(column_name) FROM table_name;
- AVG():返回指定列的平均值。
示例:
SELECT AVG(column_name) FROM table_name;
- MAX():返回指定列的最大值。
示例:
SELECT MAX(column_name) FROM table_name;
- MIN():返回指定列的最小值。
示例:
SELECT MIN(column_name) FROM table_name;