1:多表查询

 

 

INNER JOIN: 内连接

这些连接 后面结合 on 一起使用、

 

 

其他同理

 

2:CUNION 和 UNION ALL

UNION 操作符用于合并两个或多个 SELECT 语句的结果集

 

请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。

-----(也就是第1个select 查找2列,后面的也应该是查询2列)

 

列也必须拥有相似的数据类型

-----(查找寻的字段数据类型要对应 )。

 

同时,每条 SELECT 语句中的列的顺序必须相同

---- (第1个查询 A B ,第2个 select 查询应该是 A B ,不能 B A)。

 

 

 

3:查询使用通配符

通配符

常和 like 使用

 

 

 

 

4:正则表达式

 

 

 

 

案例

 

 

5:索引

INDEX 和 UNIQUE INDEX(唯一约束,两行不能有相同的索引值)

 

语法:

 

 

多列字段做为索引(联合索引,又叫 复合索引)

 

 

复合索引

 

比如有一条语句是这样的:select * from users where area=’beijing’ and age=22;

 

如果我们是在area和age上分别创建单个索引的话,由于mysql查询每次只能使用一个索引,所以虽然这样已经相对不做索引时全表扫描提高了很多效率;

 

但是如果在area、age两列上创建复合索引的话将带来更高的效率。如果我们创建了(area, age,salary)的复合索引,那么其实相当于创建了(area,age,salary)、(area,age)、(area)三个索引,这被称为最佳左前缀特性。

 

因此我们在创建复合索引时应该将最常用作限制条件的列放在最左边,依次递减。

 

索引也不说随便建,索引也会占用表空间,而且有些表数据不适合建立索引(比如表数据少、经常删除、修改的表)

索引这块参考:https://www.cnblogs.com/softidea/p/5977860.html