Mysql查询语句的书写顺序
Select [distinct ] <字段名称> from 表1 [ <join类型> join 表2 on <join条件> ] where <where条件> group by <字段>
having <having条件> order by <排序字段> limit <起始偏移量,行数>
Mysql查询语句的执行顺序
(8)Select(9)distinct 字段名1,字段名2,(7)[fun(字段名)](1)from 表1(3)<join类型>join 表2 (2)on <join条件> (4)where <where条件> (5)group by <字段> (6)having <having条件> (10)order by <排序字段> (11)limit <起始偏移量,行数>
Mysql 如何实现多表查询
MYSQL多表查询主要使用连接查询 , 连接查询的方式主要有 :
- 内连接
- 隐式内连接 : Select 字段 From 表A , 表B where 连接条件
- 显式内连接 : Select 字段 From 表A inner join 表B on 连接条件
- 外连接
- 左外连接 : Select 字段 From 表A left join 表B on 连接条件
- 右外连接 : Select 字段 From 表A right join 表B on 连接条件
- 全外连接:(很少用)
- 交叉连接 : (很少用)
MYSQL内连接和外连接的区别 ?
- 内连接:只有两个元素表相匹配的才能在结果集中显示。
- 外连接:左外连接: 左边为驱动表,驱动表的数据全部显示,匹配表的不匹配的不会显示。
- 右外连接:右边为驱动表,驱动表的数据全部显示,匹配表的不匹配的不会显示。
- 全外连接:连接的表中不匹配的数据全部会显示出来。
- 交叉连接:笛卡尔效应,显示的结果是链接表数的乘积。
CHAR和VARCHAR的区别?
- char的长度是不可变的,用空格填充到指定长度大小,而varchar的长度是可变的。
- char的存取速度比varchar要快得多
- char的存储方式是:对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节。varchar的存储方式是:对每个英文字符占用2个字节,汉字也占用2个字节。