Mysql数据库基础

表的创建删除修改

添加列

ALTER TABLE tablename ADD ()

修改列

ALTER TABLE tablename MODIFY ()

删除列

ALTER TABLE tablename DROP ();

修改表名

Rename table 表名 to 表名

修改字符集

alter table 表名 charset 字符集;

desc 表名

可以查看表的列

Mysql数据库的CRUD语句

C**(create)R(read)U(update)D(delete)**

增加数据库的表

Insert语句细节

1.插入的数据应与字段的数据类型相同

例如:把'abc'插入到int类型会错误

2.数据的长度应该再列的规定范围内

例如:不能将一个长度为80的字符串假如到一个长度为40的列中.

3.再values中列出的数据位置必须与被加入的列的排列位置相对应

4.字符和日期类型数据应该包含在单引号中

5.列可以插入空值(前提是该字段允许为空),insert into table value(null)

6.如果是给表中的所有字段添加数据,可以不写前面的字段名称

7.insert into tab_name (列名..) values(),(),() 形式添加多条记录

8.默认值的使用,当不给某个字段值时,如果有默认值就添加,否则就会报错

如果某个列没有指定not null,那么当添加数据时,没有给定值,则默认给null

如果我们希望指定某个列的默认值,可以在创建表的时候指定

修改数据库中的表

Update语句

将所有员工薪水工资都涨到5000元

如果没有带where,会修改所有员工的记录

将姓名为李四的员工薪水修改为3000元

将张三的薪水在原有基础上增加1000元

如果要修改多个字段,可以通过set字段1=值1,字段2=值2

删除数据库中的表

Delete语句

删除表中王五的数据

删除表中所有数据

使用细节

如果不使用where字句,将删除表中所有数据

Delete语句不能删除某一列的值(可使用update设为null或者 ' ')

使用delete语句仅能删除记录,不能删除表本身,

如果要删除表,使用drop table 语句

drop table '表名';

查找数据库的内容

Select语句

首先创建表

查询表中所有的学生

查询表中所有学生的姓名和对应的英语成绩

过滤表中英语成绩重复的数据distinct

要查询的记录每个字段相同才会去重

对数据库中的内容进行运算

统计每个学生的总分

统计每个学生总分再额外加10分

使用别名表示学生分数

查询姓名为赵云的学生成绩

查询英语成绩大于90分的同学

查询总分大于200分的所有同学

查询math大于60 并且(and) id大于4的学生成绩

查询英语成绩大于语文成绩的同学

查询总分大于200分 并且 数学成绩小于语文成绩,的姓赵的学生

赵%表示名字以赵开头的就可以

英语成绩在89~80之间的同学

也可以使用运算符BEWTEEN AND

查询数学分数为89,90,91的同学

也可以使用运算符in

查询所有姓赵的学生成绩

查询数学分>80,语文分>80的同学

对表中的数据进行排序

对数学成绩排序后输出(升序)

对总分按照从高到地的顺序输出(降序)

对姓李的学生成绩排序输出(升序)

相关推荐
金仓拾光集23 分钟前
筑牢风控生命线:金仓数据库替代MongoDB,重构证券融资融券业务的数据基石
数据库·mongodb·信创·1024程序员节·kingbasees·国产化替代
枫叶梨花25 分钟前
实战:将 Nginx 日志实时解析并写入 MySQL,不再依赖 ELK
mysql·nginx·elk
那我掉的头发算什么33 分钟前
【数据库】navicat的下载以及数据库约束
android·数据库·数据仓库·sql·mysql·数据库开发·数据库架构
纪伊路上盛名在39 分钟前
如何批量获取蛋白质序列的所有结构域(domain)数据-2
数据库·人工智能·机器学习·统计·计算生物学·蛋白质
tuokuac1 小时前
虚拟机挂起,重启后主机连接不上虚拟机docker中的mysql?(docker网络状态假死)
网络·mysql·docker
2301_772093562 小时前
高并发webserver_interview
运维·服务器·数据库·后端·网络协议·mysql·wireshark
大G的笔记本3 小时前
MySQL 大表查询优化、超大分页处理、SQL 慢查询优化、主键选择
数据库·sql·mysql
Lear4 小时前
Redis 持久化机制
数据库
儒道易行4 小时前
【攻防实战】Redis未授权RCE联动metasploit打穿三层内网(上)
数据库·redis·网络安全·缓存
爱考证的小刘4 小时前
MySQL OCP认证、Oracle OCP认证
mysql·oracle·oracle数据库·oracle认证·mysql自学·mysql题库·oracle学习