MySQL数据库使用大总结

创建数据库:create database dbname;

删除数据库:drop  database dbname;
创建表: 如createtable tablename(name varchar(10),hiredate date,sal decimal(10,2));
查看表中的数据: desc  tablename;
删除表:drop table tablename;

2:更改表的结构:

(1)     更改表中的字段属性

alter table tablename modify ename varchar(20);

(2)     更改表中的字段名:

atler  table tablename change ename ename2 varchar(30);

(注:changemodify都可以修改表的定义,但是change后面需要写两次列名,不方便,但change的优点是可以修改列名称)


(3)        增加表字段:

alter table tablename add column age int(3);

(注: add 增加的新字段默认加在表的最后位置,如需要确认它的位置,可以这么写, alter table tablename add column age int 3 after name;

(4)     删除表字段:

alter table tablename drop column age;


(5)     移动字段名的顺序  如 

alter table tablename modify age int(3)first;


3:DML

插入数据:insert into tablename(name,age)values(“小红”,18);
更新数据:update  tablename  set  字段名=‘’ where 。。
删除数据 delete from  tablename  where  字段名=‘’;
删除表中所有行  truncate  tablename;


查询记录:

(1)     基本查询:select *from  tablename;
(2)     查询不重复的记录:selectdistinct deptno from tablename;
(3)     条件查询:select *from  tablename where 字段名=“”;
(4)     排序查询:如按薪水的高低排序select * from tablename order by salary(desc/asc);(注:这里括号内的(desc/asc)分别代表降序/升序,如果不写的话,默认是升序);如取薪水最高的前3位:select * from tablename order by salary limit 3;
如按照薪水排序后,取第二条记录开始的后三条:select *from tablename order by salarylimit 1,3;

4:表连接从大类上面分,主要分为内连接和外连接

       内连接:仅选出两个表中相互匹配的记录,外连接会选出其他不匹配的记录

外连接又分为左外连接和右外连接,左连接,包含所有的左边表中的记录和共同匹配的记录;

右连接,包含所有的右边表中的记录和共同匹配的记录。

如:select ename ,deptname from tablename1 left join tablenamed2 on tablename1.deptno=tablename2.deptno;
子查询:select * from tablename1 where depton in(select deptno from tablename2);

某些情况下,子查询可以转变成表连接,如上面的sql可以写成

select * from tablename1 ,tablename2  where tablename1.diptno=tablename2.deptno;


5:常见的命令顺序

select 字段名1,字段名2,聚合函数 from tablename 
where  contition
group by  字段名
having  contition
oder by 字段名;
注:这里的聚合函数常见的有:记录数count(*);求和 sum(字段名);max(字段名);min(字段名)

contition:指的是条件;

group by:指的是排序;

having和where的区别在于:having是对聚合后的结果进行条件的过滤,而where是在聚合前就对记录进行过滤,如果逻辑允许,我们先过滤记录,这样因为结果集减少,将对聚合的效率大大提高,最后再根据逻辑看看是否需要having进行过滤。

猜你喜欢

转载自blog.csdn.net/qq_27028821/article/details/52717129
今日推荐