编程梦工厂 2018-09-21 16:07:48 [size=29.3333px]mysql数据库的基本操作。 [size=29.3333px]包括:DDL 和 DML 语句。 [size=29.3333px]其中,肯定会有点错误,特别是多表联合查询有错误,希望指正。 [size=29.3333px]因为我在word上写好的,试了几遍发表不理想,麻烦各位动动发财的小手点击关注,赞或者转发! 数据库操作语句梳理 1. DDL语句(私信小编007获取视频教程以及各类PDF!)DDL语句: DataBase Dfind Language,数据定义语句。 创建数据库: 语法: CREATE DATABASE IF NOT EXISTS 数据库名称 DEFAULT CHARACTER SET 'utf8'; 描述:创建一个数据库,如果名称存在不创建,不存在创建一个编码为utf8的数据库 案例: 修改数据库: ALTER ADATABASE 数据库名称; ALTER ADATABASE py1807a_test character set ‘GBK’; 删除数据库 DROP DATABASE [IF EXISTS] 数据库名称; DROP DATABASE IF EXISTS py1807a_test; 选择数据库: use 数据库名称 查看当前所有数据库:show databases; 查看当前数据库所有数据表:show tables; 创建数据表 语法: CREATE TABLE [IF NOT EXISTS] 表名( Id INT [COMMENT ‘备注’] )[default charset ‘utf8’]; 描述:创建一个名字为dept编码为Utf8的数据表 案例: 表格重命名:alter table 表名 rename to 新表名 表格中修改列名称:alter table 表名 change column 旧列名 新列名 varchar(20) 删除一列:alter table 表名 drop column 列名; 增加一列:alter table 表名 add column 新列名 char(11); 删除数据表:drop table [if exists] 表名称; 2. DML语句2.1. INSERT语句 语法:INSERT INTO 表名(值1,值2,…值n) VALUES(值1,值2,…值n); 描述:在数据表dept中添加一条完整的数据 案例: 2.2. UPDATE语句 语法: UPDATE 表名 SET 列名= "新值" WHERE 条件。 描述: 修改id=7的darea的原有数据为大会议室 案例: 2.3. DELETE语句 语法: DELETE FROM dept WHERE条件; 描述: 删除id = 8的整条数据。 案例: 2.4. SELECT语句 2.4.1. 全表查询 语法: select * from 表名称; 描述: 查询指定表中的所有数据 案例: 2.4.2. 单条件查询(后面的案例私信小编,图片太多了!) 语法: SELECT * FROM 表名 WHERE 条件; 描述: 查询一条ID=2 的数据 案例: 2.4.3. 多条件查询 语法: SELECT * FROM 表名 WHERE id = 2 AND dname="研发七"; SELECT * FROM表名WHERE id = 1 OR dname="代表"; 描述: 查找一个id=2并且dname= “研发七”的数据, 查找一个id =1 或者 dname=’代表’; 案例: 2.4.4. 比较查询 语法: SELECT * FROM 表名 WHERE id <3(比较运算符条件); 描述: 查询id <3 的所有数据。 案例: 2.4.5. 模糊查询 语法: SELECT * FROM 表名 WHERE 列名 LIKE "%数据%"; SELECT * FROM 表名 WHERE 列名 LIKE -数据-"; 描述: 查询条件中的数据,只是查询数据的一部分~~通过一部分数据完成整体数据的匹配匹配过程,称为模糊匹配过程 %:匹配任意字符0~n个 _:匹配任意一个字符 案例“ 2.4.6. 空值查询 语法; select * from 表名称 where 条件 is null; select * from 表名称 where 条件 is not null; 描述: 查询是否为空: 查询是否不为空: 案例: 2.4.7. 范围查询 语法:SELECT * FROM 表名 WHERE 列名 IN ("研发七","研发九"); 描述: 手工指定多个数据,通过范围查询操作符号in,来指定条件取值范围 案例: 2.4.8. 区间查询 语法:SELECT * FROM 表名WHERE id BETWEEN 2 AND 5; 描述: 手工指定一个区间范围,包含起始数据和结束数据:between.. and .. 案例: 2.4.9. 排序查询 语法:select * from 表名 order by id desc/asc 描述:按照指定的列进行顺序或者降序的数据整理展示 案例: 2.4.10. 分页查询 语法:select * from 表名 limint m,n; 描述:每次取出3条数据,分三次取完 案例: 2.4.11. 聚合查询 语法:select avg(id)/count(1)/max(id)/min(id)/sum(id) form 表名; 描述: l avg() 求取指定列的平均值 l count() 求取指定列的数据总数量 l max()求取指定列中数据的最大值 l min()求取指定列中数据的最小值 l sum()求取指定列中数据的和 案例: 2.4.12. 指定列查询 语法:select 列名 from 表名; 描述:查询 列名为id 和 dname 的数据 案例: 2.4.13. 查询数据踢重 语法: select distinct 列名 from 表名 描述:对重复的数据进行清除 案例: 2.4.14. 分组查询 语法:select count(1),列名 from 表名 group by 列名; select count(1),列名 from 表名 group by 列名 having darea is not null; 描述: 案例: 2.4.15. 多表联合查询—1.直接查询 语法:select * from 表1,表2; 描述:直接查看两张表格中的所有数据 案例: 2.4.16. 多表联合查询—2.关联查询 语法: Select * from 表1,表2 where 表1.列名 = 表2.列名 描述: 通过两张表的关联数据,进行条件关联 案例: 多表联合查询—.表的别名设置 语法: Select * from 表1 表1别名,表2 表2别名 where 表1.列名 = 表2.列名; 描述: 案例: 2.4.17. 多表联合查询—4.子查询 多行子查询: Select * from 表名1 where 表名2 id in (select id from 表名2 where dname in (“班委”,”常委”)); 描述:???? 案例: 单行子查询: 语法:SELECT * FROM 表2 WHERE id IN (SELECT id FROM 表1 WHERE 表2列名 = '研发七'); 描述: 案例: 2.4.18. 多表联合查询—5.外连接 左外连接: 语法: Select * from表1 表1别名 left join 表2 表2别名 on e.id = d.id 描述:??? 案例: 右外连接: 语法: SELECT * FROM 表1 表1别名 RIGHT JOIN 表2 表2别名ON e.id = d.id; 描述: 案例: |
|