- 多表查询
- 笛卡尔积查询:
- 语法:
- Select * from 表名1 as 别名1 , 表名 as 别名2 where 条件
- 关键字:as 取别名
- 语法:
- 别名的3种写法:
- 表面 as 别名(常用的)
- 列名 新列名
- 新列名 = 列名
- 联接查询
- 语法:
- Select * from 表名1 as 别名1
- 语法:
- 笛卡尔积查询:
join 表面2 as 别名2
On 表1中的列名 = 表2中的列名(最好是存在主外键关系)
例如:
Select * from table_demo as tab1
Join table_demo2 as tab2
On demoId = demo2Id
- 左联接与右联接
注意:他们都是以join为分界线,
-
- 左联接:join左边的表的数据一定是完整的,要是右边没有用空表示;
- 右联接:join右边的表的数据一定是完整的,要是左边的没有用空表示;
例如:
Select * from table_demo as tab1
Left /right Join table_demo2 as tab2
On demoId = demo2Id
- 聚合函数
- Sum(列名)求和
- Avg(求平均数)
- Max(求最大值)
- Min(求最小值)
- Count(计数) count(1) = count(*) 对所有计数
注意:常与group by 合用,当列值为空时不会纳入到计数中
例如:
Select sum(列名) as 总和 from 表名
- 其他
- 关键字
- 去重复查询distinct;注意查找出来的数据必须每个列值相同才会去重复
- 关键字
例如:select distinct 列名 from 表名
- print;提示消息;就是查询出来表时的提示消息,相当于js中的alert()方法
(2)给列名去别名:select 列名 as 新列名