Mysql高级学习笔记(1-15)

Mysql执行顺序


  1. 手写

  2. 机读先从from开始

SQLJoin


a表

mysql> select * from tbl_dept;

±—±---------±-------+

| id | deptName | locAdd |

±—±---------±-------+

| 1 | RD       | 11     |

| 2 | HR       | 12     |

| 3 | MK       | 13     |

| 4 | MIS     | 14     |

| 5 | FD       | 15     |

±—±---------±-------+

5 rows in set (0.00 sec)

b表

±—±-----±-------+

| id | name | deptId |

±—±-----±-------+

| 1 | z3   |     1 |

| 2 | z4   |     1 |

| 3 | z5   |     1 |

| 4 | w5   |     2 |

| 5 | w6   |     2 |

| 6 | s7   |     3 |

| 7 | s8   |     4 |

| 8 | s9   |     51 |

±—±-----±-------+

8 rows in set (0.00 sec)

mysql不支持全连接

使用以下方式可以实现全连接

mysql> select * from tbl_dept a right join tbl_emp b on a.id=b.deptId

-> union

-> select * from tbl_dept a left join tbl_emp b on a.id=b.deptId;

±-----±---------±-------±-----±-----±-------+

| id   | deptName | locAdd | id   | name | deptId |

±-----±---------±-------±-----±-----±-------+

|   1 | RD       | 11     |   1 | z3   |     1 |

|   1 | RD       | 11     |   2 | z4   |     1 |

|   1 | RD       | 11     |   3 | z5   |     1 |

|   2 | HR       | 12     |   4 | w5   |     2 |

|   2 | HR       | 12     |   5 | w6   |     2 |

|   3 | MK       | 13     |   6 | s7   |     3 |

|   4 | MIS     | 14     |   7 | s8   |     4 |

| NULL | NULL     | NULL   |   8 | s9   |     51 |

|   5 | FD       | 15     | NULL | NULL |   NULL |

±-----±---------±-------±-----±-----±-------+

9 rows in set (0.00 sec)

a的独有和b的独有

mysql> select * from tbl_dept a left join tbl_emp b on a.id=b.deptId where b.id is null

-> union

-> select * from tbl_dept a right join tbl_emp b on a.id=b.deptId where a.id is null;

±-----±---------±-------±-----±-----±-------+

| id   | deptName | locAdd | id   | name | deptId |

±-----±---------±-------±-----±-----±-------+

|   5 | FD       | 15     | NULL | NULL |   NULL |

| NULL | NULL     | NULL   |   8 | s9   |     51 |

±-----±---------±-------±-----±-----±-------+

2 rows in set (0.01 sec)

索引

索引的定义:

索引是帮助SQL高效获取数据的数据结构,索引的本质:数据结构

可以简单的理解为:排好序的快速查找数据结构

在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式(引用)指向数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引,下图就是一种示例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值