MySQL 8.0数据库 理论知识 使用知识

为什么使用数据库?

为了持久化将内存中的数据保存在硬盘上加以"固化"

1.去重

第一种 select distinct id from user;

第二种 select distinct id ,name from user;

查什么就在后面继 不能放前面

2.空值参与运算

他利用ifnull来进行操作 如果你是null 他就会变成0 如果不加这个 你直接运算null 结果还是空

3.着重号 ``

如果你有关键词 就在这个单词上面加 ` ` 号

4. and 优先级高于 or

5.包含 between

比如查询工资只要3000-5000 就可以用 between 3000 and 5000

not between(不包含)

6.占位符 _

这个比如你要查询第二字母是a的 你可以

select * from user where name like '_a%'

7.分页

多少条 pagesize

第几页 pagenum

公式(pageNum-1)*pagesize

8.声明顺序

select

from

where and/or/ not

order by desc/asc

having

limit

9. offset 偏移量(8.0新特性)

比如你要查询第32 33 条记录

select * from user limit 2(表示2记录)offset 偏移2个

10.排序 order by 及二级查询

select * from user order by age desc (一级查询),code asc (二级查询)

如果还有三级 等等 在后面继续 ,条件 就可以了

11. 正则 regexp 长度 length

12.笛卡尔积

交叉连接

他的作用就是可以把毫无相关的也能进行连接 任何一张表都可以进行连接

不需要join 直接from 后面用,隔开 两个表名 名称太长可以取别名

13.基本函数

14.if

15.ifnull

16.拼接

为了好看可以加 ,

17.日期

18.count(*) count(1) count(字段)效率区别

在myisam储存引擎这三种效率都相同

在innodb储存引擎就是三者都不一样count(*)=count(1)>count(字段)

相关推荐
Decay__9 分钟前
01_MySQL 体系架构全解 —— 连接层、SQL 层、存储引擎层与 InnoDB 深入
运维·数据库·sql·mysql·架构
Linux_cy18 分钟前
nginx 502 排查手册:九种原因分类、定位命令与检查顺序
linux·运维·服务器·网络·数据库·nginx·ssh
在多学一点20 分钟前
MySQL_DDL的基本命令
数据库·mysql·adb
96245640 分钟前
补打一条卡,为什么要从前一天重新算:人工补录与实时重算业务复盘
java·mysql·kafka
是程序喵呀1 小时前
Redis实现持久化
数据库·redis·缓存
余槐i1 小时前
PostgreSQL 加索引后查询反而更慢:优化器弃用索引的 3 种情形
spring boot·redis·mysql·postgresql·事务
z06.1 小时前
MySQL存储引擎
数据库·mysql
小徐不徐说2 小时前
数据库存储基础:理解表结构、主键、事务与 BLOB
开发语言·数据库·c++·qt·程序设计
JackLam2 小时前
Gitea HTTPS 反向代理配置
数据库
量子物理学2 小时前
oracle plsql instantclient 安装
数据库·oracle