当前位置: 首页 > news >正文

MySQL学习

目录

  • 1、数据库定义基本语句
    • (1)数据库操作
    • (2)数据表操作
  • 2.数据库操作SQL语句
    • (1)插入数据
    • (2)更新语句
    • (3)删除数据
  • 3.数据库查询语句
    • (1)基本查询
    • (2)where条件查询
    • (3)查询结果排序order by
    • (4)聚合函数使用
    • (5)查询结果分组处理,配合聚合函数
    • (6)子查询处理多表
  • 4.几种删除方式的区别

1、数据库定义基本语句

(1)数据库操作

# 创建数据库db
create database  db
# 修改数据库db的属性:数据库名称由db改为db1
alter database db rename to db1
# 修改数据库db的属性:数据库修改所有者为user1
alter database db owner to user1
# 删除数据库db
drop database db

(2)数据表操作

# 创建数据表student
create table student(id char(10) primary key,name varchar(255) not null,birthday date  null,major varchar(255) null
);
# 修改数据表:添加新的列age
alter table student add age int null;
# 修改数据表:删除birthday这一列
alter table student drop column birthday;
# 修改数据表:修改表名为student1
alter table student rename to student1;
# 修改数据表:修改列名major为major1
alter table student rename column major to major1
# 修改数据表:修改指定列的类型
alter table student alter column name type varchar(12);# 删除数据表
drop table student;

2.数据库操作SQL语句

(1)插入数据

insert into  student values 
('2017','zm','1999-04-23','计算机')('2017','wb','1997-08-05','计算机');

(2)更新语句

如果不加where 会更新表中所有数据

update student 
set birthday='1999-04-09' 
where name='zm'

(3)删除数据

如果不加where会删除所有行

delete from student where name='zm';

3.数据库查询语句

(1)基本查询

# 查询全部数据
select * from student
# 查询全部数据,但指定字段展示
select id,name from student

(2)where条件查询

# 按照条件查询数据
select * from student where major='计算机' and name='zm';
# 利用between...and..查询
select * from student where birthday between '1999-01-01' and '1999-12-31';
# 利用like和通配符 -表示一个字符,%表示多个字符
select * from student where name like 'z%';
select * from student where name like 'z_';
# 利用not like 查询不是z开头的name
select * from student where name not like 'z%';

(3)查询结果排序order by

# asc 升序,默认不写
select * from student order by birthday asc;
# desc 降序
select * from student order by birthday desc;

(4)聚合函数使用

# AVG-平均值 MIN-最小值 MAX-最大值 SUM-求和 COUNT-结果集行数计数
select COUNT(*) as '人数' from student;
# 去重:有几个专业
select COUNT(DISTINCT major) as '专业数' from student; 

(5)查询结果分组处理,配合聚合函数

# 查询每个专业的人数
select major, count(id) from student
group by major
# 使用having和where指定查询条件,同时使用时,先用where过滤数据集,再使用having限定分组
# 查询女生所在的专业中,女生人数超过3人的专业
select major,count(*) from student
where sex='女'
group by major
having count(*)>3

(6)子查询处理多表

就是再select语句的where中嵌套一层或多次select语句

select teacher_id,name from teacher
where collegeID IN
(select collegeID from college
where college_name='电智学院'
order by teacher_id)

4.几种删除方式的区别

(1)drop:用来删除数据库和数据表,删除结构和数据,不可回滚
(2)delete:用来删除表中的数据记录,一行一行删,插入事物,可以回滚。如果没有where条件,就删除表中全部记录
(3)truncate:删除表(直接删除整张表,然后建个新表),不支持事务。不可回滚,

http://www.lryc.cn/news/8578.html

相关文章:

  • C语言(强制类型转换)
  • 搭建hadoop高可用集群(二)
  • CentOS升级内核-- CentOS9 Stream/CentOS8 Stream/CentOS7
  • 【基础篇】一文掌握css的盒子模型(margin、padding)
  • 重生之我是赏金猎人-漏洞挖掘(十一)-某SRC储存XSS多次BypassWAF挖掘
  • Wails简介
  • 滑动窗口 AcWing (JAVA)
  • vue小案例
  • 阅读笔记3——空洞卷积
  • CSS系统学习总结
  • 阿里一面:你做过哪些代码优化?来一个人人可以用的极品案例
  • Android NFC 标签读写Demo与历史漏洞概述
  • 亿级高并发电商项目-- 实战篇 --万达商城项目 六(编写角色管理、用户权限(Spring Security认证授权)、管理员管理等模块)
  • 博视像元获近5000万元融资,主攻半导体前道及锂电高端部件供应
  • SpringCloud-断路器Hystrix
  • JavaScript精简笔记
  • MySQL常用函数汇总
  • 100M网口客户电脑插上网线就断线,自己工厂正常,是什么问题导致?
  • 从零开始学习无人机 00 硬件配置
  • 免翻在Chrome上使用新必应(New Bing)聊天机器人
  • LA@特征值和特征向量
  • transpose代码学习
  • 【Redis】Redis 常用数据类型操作 ② ( 数据库操作 | 切换数据库 | 查询当前数据库键个数 | 清空当前数据库 | 清空所有数据库 )
  • 最简单的物体识别例子
  • 指针——“C”
  • 学习 Linux 内核书籍推荐
  • 深圳硬件黑客松活动,开放报名!
  • 力扣sql简单篇练习(十七)
  • Linux网络技术学习(六)—— 网络设备初始化(II)
  • 一手教你如何搭建Hadoop基于Zookeeper的集群(5台主机)