MySQL 命令大全

目录

查询以有的数据库 

指定一个数据库

创建表

查看表的结构

增删改查

主键约束

联合主键

自增约束

alter   add 添加字段

alter   add 添加主键 

drop 删除主键+删除字段

alter   modify修改字段类型

alter   change修改字段名

唯一约束 unique

非空约束not null,默认约束default null

外键约束 foreign key ... references ...

distinct 排重查询

between ... and...  取两个值之间范围

in (或者)

and 和 or 和where 结和

order by  ... desc 从大到小排序。asc升序

count() 统计总数

limit M,N

like % _ 模糊查询

as 别名

inner join 关联查询(内连接)

left join 关联查询(左连接)

right join 关联查询(右连接) 

full join 全连接-mysql不支持-使用union代替

union 合并多个select查询

Date 时间数据类型

函数avg(平均值), count(统计个数),max(最大值),min(最小值)

聚合函数计算结果  group by 分组

group by 的条件判断 having 

把字段里的值转换为 大写ucase( ) 小写lcase( )

把字段的数据提取字符mid()


格式:
create database 数据库名;
案例:
create database text;

查询以有的数据库 

查询以有的数据库:
show databases;

指定一个数据库

格式:
use 数据库名;
案例:
use test;

创建表

格式:
create table 表名(
    类型 ...;
    ...
);  
案例:
create table test(
    id int,
    name varchar(20)
);

查看表的结构

格式:
describe 表名;
案例:
describe text;

Field:字段
Type: 字段的类型
Null: 是否允许为空
Key:  约束
Default:默认值
Extra: 其他

增删改查

格式:
增:insert into 表名 values (字段1,字段2....);
删:delete from 表名 where 条件;
改:update 表名 set 字段名 where 条件 ;
查:select * from 表名;

案例:
-- 增删改查
# 增
insert into text values('七七','女','2000-1-1');
# 删
delete from text where name='七七';
# 改
update text set name='伞兵nb' where sex='男';
# 查
select * from text; 	

主键约束

案例:创建表时添加主键

该id 添加了主键约束,就是id的数据是不可重复的、唯一的、并且不能为空。
关键字:primary key

create table test(
    id int primary key,
    name varchar(20)
);

联合主键

案例:创建表时添联合主键

create table user2(
    id int,
    name varchar(20),
    pwd varchar(20),
    primary key(id,name)
);

联合主键的字段,添加数据时都不能为空
而且主键联合的数据内容不能被重复

例如:
insert into user2 values(1,'张三','666');-- 成功 
insert into user2 values(1,'张四','666');-- 成功
insert into user2 values(1,'张四','666');-- 失败

自增约束

案例:创建表时添加主键自增

关键字:auto_increment

create table user3(
    id int primary key auto_increment,
    name varchar(20)
);
自增: 这里只添加的名字  id是自增
insert into user3 (name) values('张三');-- 成功id自增
insert into user3 (name) values('张三');-- 成功id自增

alter   add 添加字段

案例:给表添加字段

格式:alter table 表名 add 字段名称 字段类型;

关键字:alter add

create table user3(
    id int,
    name varchar(20)
);

alter table user3 add passtest int(4); --添加成功

alter   add 添加主键 

在我们创建表时忘记设置主键

create table user3(
    id int,
    name varchar(20)
);

案例:给关键字加上索引

格式:alter table 表名 add primary key(字段名称);

例子:
alter table user3 add primary key(id);-- 设置id主键成功

drop 删除主键+删除字段

create table user4(
    id int primary key,
    name varchar(20)
);

alter table user4 drop primary key;--删除了id的主键
alter table user4 drop id;    --删除了id

alter   modify修改字段类型

create table user4(
    id int primary key,
    name varchar(20)
);

格式:alter table 表名 modify 字段名 类型;
alter table user4 modify name int(20);

alter   change修改字段名

create table user4(
    id int primary key,
    name varchar(20)
);

格式:alter table 表名 change 字段名 新的字段名 类型; 这里类型也可以修改为别的
alter table user4 change name nb varchar(25);

唯一约束 unique

格式:unique(字段名)
表示这个字段插入的内容不可以有重复数据

create table user5(
    id int primary key auto_increment,
    name varchar(20),
    unique(name)
);

insert into user5 values(1,'牛B'); -- 成功
insert into user5 values(2,'牛B'); -- 失败

非空约束not null,默认约束default null

not null:插入数据时不能为空,非空约束
defaulr null:不插入这个字段数据 默认为空

也可以写 default 1, 
不插入这个字段默认 为1

create table user3(
    id int,
    name varchar(20)not null,
    pwd varchar(20)default null
);

外键约束 foreign key ... references ...

一个表中的 foreign key 指向另一个表中的 primary key
需要创建两张表  子表key引入父类key
父表的外键id
create table a(
    id int primary key,
    name varchar(20)
);
create tabke b(
    id int primary key,
    name varchar(20),
    a_id int,
   	foreign key(a_id)references a(id)
);

insert into a values(1,'小李');
insert into b values(1,'张三',1);

delete from a where id = 1; 删除失败,因为子类a_id 有数据
delete from b where a_id = 1; 删除成功
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值