目录
1、SQL语言入门
1.1 SQL命令一般分为DQL、DML、DDL
SQL:声明式编程语言
DQL:数据查询语句;SELECT查询命令,用于数据查询。
DML:数据操纵语句;INSERT、UPDATE、DELETE三种语句,主要用户插入、更新、删除数据。
DDL:数据定义语句;主要用于创建、删除、以及修改表、索引等数据库对象。
每次执行的SQL可以由多条SQL命令组成,多条SQL命令之间用分号(“ ;”)分隔。
多行命令可以在一行中,也可以在多行中;单条命令也可以占用多行。
1.2 DDL语句
DDL语句是创建、修改何删除表的语句。
CREATE TABLE table_name(
col01_name data_type,
col02_name data_type,
col03_name data_type,
col04_name data_type,
);
CREARE TABLE:创建表
table_name:表名
col01_name:列命
data_type:数据类型
在建表的时候,可以指定表的主键(主键是表中行的唯一标识,这个唯一标识是不能重复的)。在列定义后面用“primary key”指定这一列为主键:
CREATE TABLE student(no int primary key,student_name varchar(40),age int);
删除表
DROP TABLE table_name;
1.3 DML语句和DQL语句
DML语句用于插入、更新和删除数据。主要包含INSERT语句、UPDATE语句和DELETE语句。
INSERT语句:INSERT INTO 【表名】VALUES(【数据】,【数据】,...)
插入数据时没有提供列数据会被置NULL
INSERT INTO student VALUES(1,‘张三’,14);
SELECT语句:查询数据( * 代表全部数据)
SELECT 【列名】,【列名】 FROM 【表名】
SELECT * FROM student;
SELECT no,student_name,age FROM student;
更新语句:UPDATE 【表名】 SET 列名=数据;
WHERE:过滤表达式,指定更新哪条数据
UPDATE student SET age = 15; UPDATE student SET age = 14 WHERE no = 3;
删除语句:DELETE FROM 【表名】 WHERE 【指定要删除的记录】
DELETE FROM stydent WHERE no = 3;
SELECT子句后面跟WHERE子句:指定要查询哪条记录;
WHERE条件中也可以使用大于、小于的表达式
SELECT * FROM student WHERE age >= 15;
排序字句:SELECT语句 + ORDER BY子句(默认升序)
排序子句的列名后加“DESC”(倒序)
SELECT * FROM student ORDER BY age;
SELECT * FROM student ORDER BY age WHERE age >= 15;
SELECT * FROM student ORDER BY age DESC;
分组查询:GROUP BY
使用分组查询的时候,需要使用聚合函数:count、sum等
SELECT age,count(*)FROM student GROUP BY age;
1.4 其他SQL语句
分组查询:GROUP BY
使用分组查询的时候,需要使用聚合函数:count、sum等
INSERT INTO student_bak SELECT * FROM student;
整合语句:UNION
把两张表查询出来的数据整合在一个结果集下
UNION可以把结果集中相同的两条激励合并成一条
如果不想合并,使用 UNION ALL
SELECT * FROM student WHERE no = 1 UNION SELECT * FROM student_bak WHERE no = 2;
清空表内容:TRUNCATE TABLE
TRUNCATE TABLE student;