Mysql基本命令
查看数据库
show databases;
创建数据库
create database db1; 创建数据库db1
删除数据库
drop database db1; 删除数据库db1
切换进入数据库
use user 进入user数据库
查看数据库中的表
show tables;
创建表
创建表的方法 (1) 直接创建 CREATE TABLE [IF NOT EXISTS] 'tbl_name' (col1 type1 修饰符, col2 type2 修饰符, ...) #字段信息 col type1 PRIMARY KEY(col1,...) INDEX(col1, ...) UNIQUE KEY(col1, ...) #表选项: ENGINE [=] engine_name ROW_FORMAT [=] {DEFAULT|DYNAMIC|FIXED|COMPRESSED|REDUNDANT|COMPACT} 注意: Storage Engine是指表类型,也即在表创建时指明其使用的存储引擎 同一库中不同表可以使用不同的存储引擎 同一个库中表建议要使用同一种存储引擎类型
范例:创建表
CREATE TABLE student ( id int UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL, age tinyint UNSIGNED, gender ENUM('M','F') default 'M' )ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8; #id字段以10初始值
查看对应表结构
DESC student;
insert添加表数据
insert student (id,name,age,gender)values(10,'xiaoming',20,'M'); ⭐️id是AUTO_INCREMENT 可以不添加,也可以添加 数字不用'' 字符需要''
查看表内数据
select * from student; 查看所有字段,在student表中 select 字段 from 表名;
复制另外一个表的结构
create table emp like student; 创建一个表emp,表结构复制student表
update修改表数据
update emp set age=18 where id=1; 更新emp表id=1的age为18 update 数据库 set 修改内容 where 过滤条件
delete删除表数据
delete from emp where name='xiaoming';删除表emp中name=‘xiaoming’的记录
查询:分组 group by
select gender,avg(age) from students group by gender; select 性别字段,平均(年龄)from 表名 group by 性别字段 按照性别分组,男女分别的平均年龄 ⭐️分组之后再过滤不能用where 用having
查询:分组后排序order by
select classid,gender,avg(age) from students group by classid,gender order by classid;
查询classid,gender,avg(age) 从students表 分组classid,gender 根据classid排序