dcsxlh

导航

 

1、create   database    新库名        新建库

 

 

 2、查看所有的仓库

 

 

 3、use   库名      使用库

 

 4、show  tables      查看库中所有表

 

 

 

5、create  table  表名(字段名 1  字符类型(字符长度),字段名2   字符类型(字符长度));

 

案例:create  table  hz015(id int(10),name char(20));

 6、格式:INSERT into  表名 VALUES(值1,值2);       插入数据

方法一:

案例:INSERT into  hz015 VALUES(1,"xiaozhu");

方法二:

格式:INSERT into  表名(字段1) VALUES(值1);       插入部分数据

INSERT into  hz015 (id)VALUES(4);

 

 

 

7、desc    表名    查看 表结构

 

1、建库

2、使用库

3、建表

4、插入数据

5、对数据增删改查

 

 ================================

建表:

create  table    表名(  字段名1,数据类型(数据的长度)约束;字段名2,数据类型(数据的长度)约束   )

 

 ================================

字符类型:

一个汉字占多少   长度和编码有段 (gbk  和  utf8  这些都是字符集格式,)

utf-8:  一个汉字等于 3个字节

gbk  :一个汉字等于2个字节

常用的类型:

(1)数值类型

int         字节:4            大整数值   

bigint    字节:8            极大整数值

float       字节:4           浮点数  

(2)字符类型

char    0-255        定长字符串

varchar      0-65535  字节      变长字符串

(3)时间类型

date    yyyy--mm-dd   年月日           字节3

time   hh:mm:ss       时分秒     字节:3

date time   日期+时间    字节:8

year    年       字节:1

 ================================

约束:

实际上就是表中的限制条件

作用:表在设计的时候加入 约束的目的是为了保证表中的记录完整和有效

约束种类:

1、非空约束   (not  null) 非空  用于保证字的值不能为空

2、唯一约束    (unique)   简称:(uni)  保证字段值具有唯一性,一个表可以有多个,能为空

3、主键约束   (primary  key)简称 :pri    保证字段值具有唯一性 、一个表中只用一个,不能为空

4、默认值       (default )

5、auto_incrment  自增长

备注:与主键约束一起使用

6、空值插入使用:null

7、保证中文显示,在建表语句后加上:  default   charset=utf8

案例1:

create table aa(id int(10) PRIMARY key ,age int(10) default 18 ,sfz int(40) UNIQUE )DEFAULT CHARSET=utf8 ;
select * from aa ;
desc aa ;   

INSERT  into   aa(id,sfz)  VALUES(1,1232)

案例2:

SELECT * from dt;
create table dt( name char(10), n year not null ,cj_data char(10));
INSERT into dt VALUES("tian",1995,11112222)

 

 ================================

删除表:

格式:drop  table   表名;

案例:drop  table   bb ;

 ================================

表结构:

(1)添加表字段 add

格式:alter  table   表名  add   字段名    字段类型(字符长度);

案例:alter  table   da  add age  int(10);

 

 (2)修改表字段  change

格式:alter  table   表名  change  原字段名   新字段名   新字符类型(新字符类型长度 );

案例:alter  table   da   change  age   sex  char(10 );

(3)删除表字段  drop

格式:alter  table  表名  DROP    删除的字段名 ;

案例:alter  table  da  DROP  name ;

(4)调换表字段的顺序

a、first  字段放在第一位

格式:ALTER table 表名 add  新字段名   字符类型(字符长度) first ;

案例:ALTER table da add id int(10) first ;

b、modify          after   (在什么后面)

格式:ALTER  table   表名  modify  字符类型(字符长度)   after  原字段  ;

案例:ALTER  table   da  modify  age int(10)  after  id  ;

 ================================

查询语句:

select  语句

 

(1)查询一个表中所有的数据

格式:SELECT   *   from   表名;

案例:SELECT   *   from   hz015 ;

(2)查询一个表中部分字段的数据

格式:SELECT   字段名1,字段名2  from   表名 ;

案例:SELECT   id  from   hz015 ;

备注:用,逗号分隔

(3)取别名  as    查询语句

 

 

 (4)指定条件查询内容

格式:SELECT   *   from   表名 where  条件 ;

案例:SELECT   *   from   hz015 where id=1 ;

 条件:比较运算符,and,or  ,in ,not  in   ,between   and ,is  null    ,is not  null

where 条件使用注意:

比较运算符:(=,>,<,>=,<=,!=(不等于),<>(不等于))

SELECT   *   from   hz015 where id=1 ;

SELECT   *   from   hz015 where id>1 ;

SELECT   *   from   hz015 where id<3 ;

SELECT   *   from   hz015 where id<=3 ;

SELECT   *   from   hz015 where id>=3 ;

SELECT   *   from   hz015 where id<>3 ;

SELECT   *   from   hz015 where id!=3 ;

 

and  条件   同时满足所有条件,  比如  :条件1和条件2 同时满足

格式:select *  from表名  where  条件1 and  条件2 ;

案例:select *  from   emp  where  dept2=101  and  incoming>3000 ;

 

or 条件   满足所有条件中的其中一个条件,  比如  :条件1和条件2 满足其中一个或都满足

格式:

select * from   表名 where   条件1 or 2条件 ;

案例:select * from emp where dept2=101 or incoming>5000 ;


between     and   在什么范围内

格式:SELECT   *   from  表名  where   条件  between    开始值   and  结束值;

案例:SELECT   *   from   hz015 where id  between   2 and  4;

 

in  在一组数据中选(或匹配其中的数据)

格式:select * from   表名 where  字段   in (匹配的值)

案例:select * from hz015 where id in (1,3,10,11)

 

not  int     匹配不在一组数据中的数据

格式:select * from   表名 where  字段   not   in (不匹配的值)

案例:select * from hz015 where id not in (1,3,10,11)

 

is  null    为空

格式:select * from  表名 where 字段名 is null ;

案例:select * from hz015 where name is null ;

 

is  not   null  不为空

格式:select  *  from  表名  where   字段名   is  not null ;

案例:select  *  from   hz015  where name is  not null ;

==================================================

order by   排序

升序:asc

默认:asc  可以不写

格式:select * from 表名   ORder by   字段名 ;

案例:select * from emp ORder by incoming ;

格式二:select * from 表名   ORder by 字段名    asc ;

案例:select *  from   emp  ORder by   incoming  asc ;

降序:desc

格式:select  *  from   表名  ORDER BY  字段名  desc ;

案例:select  *  from    hz015  ORDER BY  id  desc ;

 

二次排序

格式:select *  from   表名  ORder by  字段1 desc  , 字段2     desc ;

案例:select *  from   emp  ORder by  dept2  desc  ,incoming desc ;

==================================================

like  模糊匹配查询

% :表示匹配0个字符或多个字符

—:表示一个字符

案例1:select *  from   emp  where  sid like  "15%";   表示匹配15开头的数据

案例2:select *  from   emp  where  sid like  "%6%"; 表示匹配含有6的数据

案例3:select * from emp where sid like "%4";  表示匹配4结尾的数据

案例4:select *  from   emp  where  sid like  "___4"; 表示匹配具体的字符数结尾,或开头

==================================================

limit     显示行数,限制作用

limit    m,n    m表示是下标, n 表示步长

表中下标是从0开始,

案例1:select *  from  emp  limit 0,3;  0 表示索引第一行,3表示一共显示3行

案例2:select *  from  emp  limit 3,2;  3表示第四行,2 表现显示两行

==================================================

group  by  分组

having  接条件,和我们where  一样 ,

group  by  分组后查询出来结果,在根据条件接having

案例:select   dept2,sum(incoming)  from   emp  group  by   dept2 ;

案例2:select   dept2,sum(incoming) s  from   emp  group  by   dept2  HAVING s>10000 ;

==================================================

函数:

max  最大值

min  最小值

avg  平均值

count  统计

sum  求和

distinct  去重

select max(incoming) as "最高工资" from emp ;  最高工资
select min(incoming) from emp ; #最少工资
select avg(incoming) from emp ; #平均工资
select count(incoming) from emp ;#发工资的人数
select sum(incoming) from emp ; #工资总额
select DISTINCT(dept2) from emp ; # 去重

==================================================

update    set    改

格式 :update  表名   set      修改的字段=字段新值  where  条件

案例:update  hz015  set  name="xiaozhang" where  id=4 ;

案例:update hz015 set name="xiaozhang" where id=4 or id=1 ;

==================================================
drop  删除数据库和删除表    速度快

truncate    快速删除

delete     删除

drop > treuncate>delete

===============================

delete

(1)DELETE from 表名     删除整个表的数据,表还存在 ;

案例:DELETE from hz015 ;

(2)DELETE from 表名  where   条件    删除指定的内容

案例:DELETE  from   hz015  where   id=4 ;

===============================

drop 

(1)drop   库名  删除库

案例:drop  database  kk ;

(2)删除表

格式:drop table  表名 ;

案例:drop table  hz015 ;

===============================

posted on 2021-12-17 16:32  多测师_肖sir  阅读(203)  评论(0编辑  收藏  举报