MySql(基础)

表名建议用 反引号 `` 包裹(尤其是表名包含特殊字符或保留字时),但如果表名是普通字符串(如 user),可以省略。

注释( COMMENT '姓名'

数据库

1.查看数据库:show databases;

2.如果存在就删除数据库:DROP DATABASE IF EXISTS 库名;

3.创建数据库:create datatbases( if not exists ) 数据库名;

4.(强烈建议)创建数据库时指定编码集和排序规则:(Mysql8.0固定写法)

create databases(if not exists) 数据库名 character set utf8mb4 collate utf8mb4_0900_ai_ci;

5.使用该库:use 库名;

6.搜索该库表:show tables;

7.如果存在该表就删除:drop table if exists `表名`;

8.创建表:create table `表名`(

字段1 类型1,

字段2 类型2,

...

);

9.查看表结构:desc 表名;

常用数据类型

10.常用数据类型:

Int 整数

decimal(m,d):浮点数类型 (最多一共只有M位数,整数部位M-d位数,小数部位d位数,四舍五入)

varchar(size):字符串类型

timestamp:日期类型

增、删、改、查

asc升序(从小到大)

desc降序(从大到小)

Order by排序

And/or/in可以在条件中使用

In:where math in(88,99,100);条件数学成绩为88,99,100;

Between[a,b]表范围[a,b]:math between 80 and 100;

1.增

-- 将一个表数据复制到另一个表

insert into 表1 select name, qq_mail from 表2;

值与表顺序相同:insert into 表名 values (值...);

一一对应:Insert into 表名(列名,列名....) values(值,值...);

多行插入:insert into 表名((列名,列名....)values[(值,值...),(值,值...)....];

2.删

删数据:Delete form 表名 where 条件 order by 列名 asc|desc limit n:按列名从小到大|从大到小 删除符合条件的n个数据

删表:Delete form 表名;

3.改(更新)

Update 表名 set 列名=值... where 条件

Update 表名 set 更新的东西 where id in(通过主键 id 进行筛选)

( select id from ( select id from 表名order

by (chinese + math + english) ASC -- 按总分升序排序 limit 3 ) AS temp

);

4.查

查询整个表数据:Select * from 表名;

指定数据查询:select 列名id、name.... from 表名;

查询字段为表达:select id,math+10... from 表名;

别名:select id,math+english 总分 from 表名;

去重:select distinct math from 表名;

排序:select name form 表名 order by id (asc);查询姓名,按id(升序)显示排列;

模糊:select name from 表名 where like '孙%';孙权、孙欣欣..

select name from 表名 where like '孙_';孙权、孙浩....

NULL查询:select name,qq from 表明 where qq if not NULL;查询QQ为NULL的同学姓名

分页查询:select name from 表名 limit n; 从0开始筛序n条结果

select name from 表名 limit s,n; 从s开始筛序n条结果

select name from 表名 order by id asc limit n offset s; 按照id从小到大,从s开始筛序n条结果

相关推荐
码农黛兮_466 分钟前
MySQL 数据库集群部署、性能优化及高可用架构设计
数据库·mysql·性能优化
AllenO.o29 分钟前
Redis五种数据结构详解
java·数据结构·数据库·redis·缓存
消失在人海中39 分钟前
数据分析基础:需要掌握的入门知识
数据库·人工智能·数据分析
闪电麦坤9542 分钟前
SQL:SELF JOIN(自连接)与CROSS JOIN(交叉连接)
数据库·sql·mysql
码农飞哥1 小时前
互联网大厂Java面试实战:从Spring Boot到微服务的技术问答与解析
java·数据库·spring boot·安全·微服务·面试·电商
周盛欢1 小时前
数据库故障排查指南
数据库·mysql
计算机学姐2 小时前
基于SpringBoot的在线教育管理系统
java·vue.js·spring boot·后端·mysql·spring·mybatis
onkel in blog2 小时前
【Docker】Docker Compose方式搭建分布式内存数据库(Redis)集群
数据库·redis·分布式·docker
Minyy112 小时前
“爱生活”小项目问题总结
java·数据库·spring boot·spring·maven·intellij-idea
大G哥2 小时前
【SQL 周周练】爬取短视频发现数据缺失,如何用 SQL 填充
数据库·sql