· 创建跨文件合并
· 关系型表合并
创建跨文件合并
跨文件时路径的写法
自我测试:跨文件市场数据分析
一、跨文件时路径的写法
SQL语句:
select "苏州" as 城市,"宠物用品" as 类别,* from [F:Excel王佩丰数据透视表进阶9数据1苏州.xls].[宠物用品$] union all
select "苏州" as 城市,"警告标志" as 类别,* from [F:Excel王佩丰数据透视表进阶9数据1苏州.xls].[警告标志$] union all
select "南京" as 城市,"宠物用品" as 类别,* from [F:Excel王佩丰数据透视表进阶9数据1南京.xls].[宠物用品$] union all
select "南京" as 城市,"警告标志" as 类别,* from [F:Excel王佩丰数据透视表进阶9数据1南京.xls].[警告标志$]
重点:通过 [路径名].[数据表名] 来获取源数据
二、自我测试:跨文件市场数据分析
和上一篇所讲内容类似,不过多赘述
关系型表合并
SQL语句:
select [数据$].*,[产品信息$].产品单价,[产品信息$].[P/N] from [数据$] left join [产品信息$] on [数据$].产品类别 = [产品信息$].品名
重要知识点拆解:
- " * " , 代表全部字段
- left join = left outer join 左面的 [数据$]表格 为主
- 当遇到 "P/N" 这种带有特殊字符的字段时,必须用 [P/N] 包含起来
举例:
left join 在左侧的数据表作为主数据表(right同理)
修改sql语法的位置
计算产品总价(产品单价 * 数量)
场景:
SQL语句:
select * from [数据$] inner join [产品信息$] on [数据$].产品类别 = [产品信息$].品名
重要知识点拆解:
- inner join 表示交集
连接三张表(多张表)
SQL语句:
select A.*,B.[P/N],B.产品单价,C.折扣 from ([数据$]A left join [产品信息$]B on A.产品类别 = B.品名) left join [促销信息$]C on A.产品类别 = C.品名
重要知识点拆解:
- [数据$]A , A 代替 [数据$]名
- 用()把已经进行连接之后的表格看做一个整体,从而进行下一次连接操作
- select ... from 只查询想要的数据,避免查询多余的数据
原数据表格
查询之后的表格