MySQL小结

本文详细介绍了MySQL的基本命令、数据库操作、表操作、数据操作等核心内容,并提供了实用的例子帮助理解。

一、基本命令

1.启动服务
以管理员身份运行cmd net start mysql57

2.停止服务 net stop mysql57

3.连接数据库 mysql -u root -p

4.退出登录(断开连接)quit或者 exit

5.查看版本 select version();(注意分号)

6.显示当前时间 select now();

7.远程连接 mysql -h ip地址 -u 用户名 -p

二、数据库操作

1.创建数据库 create database 库名 charset=utf-8;

2.删除数据库 drop database 库名;

3.切换数据库 use 库名;

4.查看当前使用的数据库 select database();

三、表操作

1.查看当前数据库中所有表 show tables;

2.创建表 create table 表名(列及类型);

create table student(
                    id int auto_increment primary key, 
                    name varchar(20) not null,
                    age int not null,
                    gender bit default 1,
                    address varchar(20),
                    isDelete bit default 0
                    );

3.删除表 drop table 表名;

4.查看表结构 desc 表名;

5.查看建表语句 show create table 表名

6.重命名表名 rename table car to newCar;

7.修改表结构 alert table 表名 add|change|drop 列名 类型;

alert table newcar add isDelete bit default 0;

四、数据操作

1.增
a.全列插入:insert into 表名 values(…)

insert into student values(0,'tom',19,1,'北京'0)

注意:第一个0是占位

​ b.缺省插入:insert into 表名(列1,列2,…)values(值1,值2,…);

insert into student(name,age,address) values('lilei',19,'上海');

​ c.同时插入多条数据 insert into 表名 values(…),(…),…

insert into student values(0,'hanmeimei',19,0,'北京',0),
                        (0,'popo',22,1,'海南'0);

2.删
delete from 表名 where 条件;

delete from student where id=4;

注意,没有条件是全部删除,慎用

3.改
update 表名 set 列1=值1,列2=值2,…where 条件

update student set age=16 where id=7;

注意:如果没有条件,全部列都会修改,慎用

4.查
查询表中全部数据 select * from 表名;

五、查

1.基本语法
select * from 表名;
select后面写表中的列名,如果是*,表示结果集中显示表中的所有列
如果要查询多个列,之间使用逗号分隔

select name,age from student;

select name as a ,age as b from student;

2.消除重复行
在select后面,列的前面使用distinct可以消除重复的行

select gender from student; 

select distinct gender from student;

3.条件查询

a.语法
select * from 表名 where 条件;

b.比较运算符
等于  =
大于  select * from student where id > 8;
大于等于 select * from student where id >= 8;
小于等于 <=
不等于 != or <>

c.逻辑运算符
and select * from student where id>7 and gender=0; 
or
not 

d.模糊查询
like    
%表示任意多个任意字符
_表示一个任意字符
select * from student where name like '习%';
select * from student where name like '习_';

e.范围查询      
in 表示在一个非连续的范围内
between...and... 表示在一个连续的范围内

select * from student where id in (8,10,12);
select * from student where id between 6 and 8;

f:空判断
注意 null与‘’不同
判断空 is null
判断非空 is not null

select * from student where address is null;

g.优先级
小括号,比较运算符,逻辑运算符
and比or优先级高,如果同时出现并且想用or,就用小括号

4.聚合
为了快速得到统计的数据,提供了5个聚合函数
a. count() 表示统计总行数,括号中可以写和列名
b. max(列) 表示求此列的最大值
c. min(列) 表示求此列的最小值
d. sum(列) 表示求此列的和
e. avg(列) 表示求此列的平均值

select count(*) from student; 
select max(id) from student where gender=0;
select sum(age) from studnet where gender=0;

5.分组
按照字段分组,表示此字段相同的数据会被放到一个集合中。
分组后,只能查询出相同的数据列,对于有差异的数据列,无法显示在结果集中。可以对分组后的数据进行统计,做聚合运算。

select gender,count(*) from student group by gender;    计算男女各有多少个

select gender,count(*) from student group by gender having age>20

where是对from后面表中的进行筛选
having是对group by的结果进行筛选

6.排序
select * from 表名 order by 列1 asc|desc,列2 asc|desc,…
将数据按照列1进行排序,如果某些列1的值相同,则按照列2的进行排序
默认从小到大排序,asc升序,desc降序

select * from student order by age;

select * from student where isDelete=0 order by age desc,id desc;

7.分页
select * from 表名 limit start,count;

select * from student limit 0,3;

select * from student limit 3,3;

select * from student where gender=1 limit 0,3;

注意:索引从0开始

六、关联

1.建表语句:

1.create table class(
                    id int auto_increment primary key,
                    name varchar(20) not null,
                    stuNum int not null
                    );

2.create table student(
                    id int auto_increment premary key,
                    name varchar(20) not null,
                    gender bit default 1,
                    classid int not null,
                    foreign key(classid) references class(id)
                    );

2.插入一些数据:

insert into class value(0,'python01',55),
                    (0,'pyhton02',50);

insert into students value(0,'tom',1,1);
【最优潮流】直流最优潮流(OPF)课设(Matlab代码实现)内容概要:本文档主要围绕“直流最优潮流(OPF)课设”的Matlab代码实现展开,属于电力系统优化领域的教学与科研实践内容。文档介绍了通过Matlab进行电力系统最优潮流计算的基本原理与编程实现方法,重点聚焦于直流最优潮流模型的构建与求解过程,适用于课程设计或科研入门实践。文中提及使用YALMIP等优化工具包进行建模,并提供了相关资源下载链接,便于读者复现与学习。此外,文档还列举了大量与电力系统、智能优化算法、机器学习、路径规划等相关的Matlab仿真案例,体现出其服务于科研仿真辅导的综合性平台性质。; 适合人群:电气工程、自动化、电力系统及相关专业的本科生、研究生,以及从事电力系统优化、智能算法应用研究的科研人员。; 使用场景及目标:①掌握直流最优潮流的基本原理与Matlab实现方法;②完成课程设计或科研项目中的电力系统优化任务;③借助提供的丰富案例资源,拓展在智能优化、状态估计、微电网调度等方向的研究思路与技术手段。; 阅读建议:建议读者结合文档中提供的网盘资源,下载完整代码与工具包,边学习理论边动手实践。重点关注YALMIP工具的使用方法,并通过复现文中提到的多个案例,加深对电力系统优化问题建模与求解的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值