MYSQL基本操作命令

原文地址:https://blog.youkuaiyun.com/qq_40303781/article/details/88789229

(仅供自我学习,感谢原文作者整理发布)

命令操作


1、断开数据库: exit;

2、查看存在的数据库:show databases;

3、创建数据库:create database 数据库名;

4、选择数据库:use 数据库名;

5、查看数据库下的表:show tables;

6、删除数据库:drop database 数据库名;

7、创建表
create table table_name(
属性名 类型 [完整性约束],
属性名 类型 [完整性约束],
...
属性名 类型[完整性约束]
);

示例:

学生表
   Student(SID,Sname,Sage,Ssex)   --SID 学生编号,Sname 学生姓名,Sage 年龄,Ssex 学生性别
  
  create table Student(
  SID INT primary key unique,
  Sname varchar(25) not null,
  Sage  INT,
  Ssex  char(4) default 'nan'
  ); 

8、查看表:

desc table_name;  通过desc关键字查看表的字段名称、类型、是否为null、约束条件,默认值、备注信息
show create table table_name; 展示创建表的SQL语句,并且打印了存储引擎以及字符集编码

9、删除表:drop table table_name; 

插入数据:insert into table_name(属性1、属性2...属性n) values (v1,v2...vn);

eg:insert into Student(SID,Sname,Sage,Ssex) values (1,'zhan san',12,'nan');

删除数据:drop from table_name where 属性名=value;

10、修改表:
在使用过程中不满足使用情况下修改,用alter命令修改

1)、修改表名:alter table  old_table_name RENAME new_table_name;

eg:alter table Student rename gdz;

2)、修改属性类型:alter table table_name MODIFY 属性名 属性类型;
eg:alter table Student modify Ssex varchar(4);

3)、修改属性名:alter table table_name CHANGE 旧属性名 新属性名 数据类型;
eg:alter table Student change Ssex Stest varchar(4);

4)、增加字段:alter table table_name ADD 属性名 属性类型 [完整性约束];
eg:alter table Student add Stest varchar(10) default 'hello';

5)、删除字段:alter table table_name DROP 属性名;
eg:alter table Student drop Stest;

6)、修改属性排列位置
alter table table_name MODIFY 属性名 属性类型 FIRST;    //将当前属性放到第一个位置
alter table table_name MODIFY 属性名1 属性类型 AFTER 属性名2;  // 属性1排列在属性2后面 
eg:alter table Student modify Ssex varchar(4) after Sname;

7)、修改表的存储引擎:alter table table_name ENGINE = INNODB|MYISAM;

11、查询表:

select 属性列表 from 表名 [where 条件表达式1]
[group by 属性名1[having 条件表达式]]
[order by 属性名2 [asc | desc]]

1)、带in子查询:[not] in (元素1 ,元素2... 元素3);  

eg:select * from Student where SID in(2,3,4);


2)、带between and 的范围查询:[not]between 取值1 and 取值2;    

  eg:select * from Student where Sage between 20 and 21;


3)、带like的通配符匹配字符串:[not] like '字符串';
通配符:
%:表示0个或者任意长度的字符串
_:只能表示1个字符
eg:select * from Student where Sname like '%l%';


4)、空值查询:is [not] null;           

eg:select * from Student  where Sname is not null;
5)、带and的多条件查询:条件表达式1 and 条件表达式2 [ ... and 条件表达式2]       

eg:select * from Student where SID >2 and Ssex='nv';
6)、带or的多条件查询:条件表达式1 or 条件表达式2 [ ... or 条件表达式2]    

 eg:select * from Student where SID > 2 or Ssex='nv';
7)、去重复查询 :select distinct 属性名                            

eg:select distinct Ssex from Student;
8)、用group by 属性名[having 表达式];    

select * from Student group by Ssex;

9)、对结果排序:order by 属性名[asc | desc];   asc:升序排列,数据越来越大,默认是升序     desc:降序排列,数据越来越小
eg:select * from Student order by Sage asc;

10)、union 联合查询
select 属性列表 from table_name1 [where 条件表达式] union
select 属性列表 from table_name2 [where 条件表达式]
联合查询默认的结果数据进行了去重,distinct   
使用All 可以展示不去重的结果

eg:select SID from Student union all  select SID from SC;

11)、limit 分页查询
select * from Student limit 90 ;一个参数指从起始0号位置开始读取指定长度的数据

select * from Student limit200,9 ; 第一个位置值得是起始位置,第二个参数指的是读取数据的长度(个数)

12)、联合查询

左连接(left join)
右连接(right join)
内连接(inner join)

左连接:select * from Student a left join SC b on a.SID = b.SID;

内连接:select * from Student a inner join SC b on a.SID = b.SID;

右连接:select * from Student a right join SC b on a.SID = b.SID;
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值