Open Qingquan-Li opened 7 years ago
INSERT INTO 表名 (列名1,列名2,列名3) VALUES(内容1,内容2,内容3);
DELETE FROM 表名 WHERE 删除条件;
UPDATE 表名 SET 列名=新值 WHERE 更新条件;
UPDATE 用于更新数据表的数据,例如:更新 student 表中的数据列(字段)中的学号 StudentNo 为 1024 的学生的 email 字段数据:
UPDATE
UPDATE student SET email="student1024@gmail.com" WHERE StudentNo = "1024";
ALTER 用于修改数据表的表定义,例如:修改 student 表中的数据列(字段)的定义,假设 student 表的 name 字段定义错误,需要删除 name 字段,然后重新添加 name 字段的定义:
ALTER
ALTER TABLE student DROP COLUMN name; ALTER TABLE student ADD name VARCHAR(30)
SELECT 列名 FROM 表名 [查询条件]; -- 普通查询
SELECT 列名 FROM 表名 WHERE 条件; -- 按特定条件查询( 例如 =、>、<、>=、<、!= 以及一些扩展运算符 is [NOT] NULL、IN、LIKE )
SELECT 列名 FROM 表名 WHERE 列名 LIKE CONCAT('%','a','%'); -- 典型的模糊查询
SELECT 列名 FROM 表名 LIMIT 要查的数据序号((当前页数-1)*页面大小),页面大小; -- 查询时把 LIMIT 放在查询的最后面,分页查询
SELECT 列名 FROM 表名 ORDER BY 列名; -- 按照指定列名 ORDER BY 升序排列
SELECT 列名 FROM 表名 ORDER BY 列名 DESC; -- 按指定列名 倒序排列
/*模糊查询 + 倒序排列 + 分页查询*/ SELECT * FROM tb_user WHERE userName LIKE CONCAT('%','a','%') ORDER BY userId DESC LIMIT 0,2;
/*联表查询:*/ /*内联: inner JOIN */ /*一般我们写成:*/ SELECT * FROM table1,table2 WHERE 1.userId = 2.userId; /*高效率写法:*/ SELECT * FROM table1 inner JOIN table2 ON 1.userId = 2.userId; /*左联: left outer JOIN */ /*显示左表 T1 中的所有行,并把右表 T2 中符合条件加到左表 T1 中;右表 T2 中不符合条件,就不用加入结果表中,并且 NULL 表示*/ SELECT * FROM table1 left outer JOIN table2 ON 1.userId = 2.userId; /*右联: right outer JOIN */ /*显示右表 T2 中的所有行,并把左表 T1 中符合条件加到右表 T2 中;左表 T1 中不符合条件,就不用加入结果表中,并且 NULL 表示*/ SELECT * FROM table1 right outer JOIN table2 ON 1.userId = 2.userId; /*全联: full outer JOIN */ /*显示左表 T1 、右表 T2 两边中的所有行,即把左联结果表 + 右联结果表组合在一起,然后过滤掉重复的*/ SELECT * FROM table1 full outer JOIN table2 ON 1.userId = 2.userId;
CREATE TABLE 表名 ( id INT(10) NOT NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL, day DATE, ... );
DROP TABLE 表名;
/*添加一个列*/ ALTER TABLE 表名 ADD 列名 列数据类型 [after 插入位置];
/*修改一个列*/ ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;
/*删除一个列*/ ALTER TABLE 表名 DROP 列名;
/*重命名*/ ALTER TABLE 表名 RENAME 新表名;
DROP DATABASE 数据库名称;
CREATE DATABASE database_name;
/*设置 CHARACTER SET 和 COLLATE */ CREATE DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
/*查看有哪些数据库*/ SHOW DATABASES;
/*使用指定的数据库*/ USE 数据库名; /*查看当前数据库的状态*/ STATUS;
/*查看当前数据库下的所有表*/ SHOW TABLES;
/*查看表结构*/ DESC 表名;
/*查看表中的所有数据列*/ SELECT * FROM 表名;
一、插入语句
二、删除表中的数据
三、更新语句
注意:
UPDATE
用于更新数据表的数据,例如:更新 student 表中的数据列(字段)中的学号 StudentNo 为 1024 的学生的 email 字段数据:ALTER
用于修改数据表的表定义,例如:修改 student 表中的数据列(字段)的定义,假设 student 表的 name 字段定义错误,需要删除 name 字段,然后重新添加 name 字段的定义:四、查询语句
五、创建表
六、删除表
七、修改表
八、删除数据库
九、创建数据库
附:常用的查看数据库语句
附:《漫画数据库》附录 常用 SQL 命令