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的同学

对表中的数据进行排序

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

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

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

相关推荐
ZWZhangYu2 小时前
LangChain 构建向量数据库和检索器
数据库·langchain·easyui
feifeigo1233 小时前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
火龙谷4 小时前
【nosql】有哪些非关系型数据库?
数据库·nosql
焱焱枫5 小时前
Oracle获取执行计划之10046 技术详解
数据库·oracle
qq_392397126 小时前
Redis常用操作
数据库·redis·wpf
A__tao8 小时前
一键将 SQL 转为 Java 实体类,全面支持 MySQL / PostgreSQL / Oracle!
java·sql·mysql
一只fish8 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(17)
数据库·mysql
花好月圆春祺夏安9 小时前
基于odoo17的设计模式详解---装饰模式
数据库·python·设计模式
A__tao9 小时前
SQL 转 Java 实体类工具
java·数据库·sql
m0_653031369 小时前
腾讯云认证考试报名 - TDSQL数据库交付运维专家(TCCE PostgreSQL版)
运维·数据库·腾讯云