ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: BIN_YANG168

[Excel 基础应用] [第45期]数据透视表水平测试(已总结)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2009-3-11 20:39 | 显示全部楼层
占个位置先,迟点再发答案
导入外部数据+OLE DB查询+SQL语句+创建数据透视表:
  1. SELECT Expr1000 as 年份, Expr1001 as 4s店名, 车型, Expr1003 as 发动机号码, Expr1004 as 维修代码,Expr1005 as 1季度销量, Expr1006 as 2季度销量, Expr1007 as 3季度销量, Expr1008 as 4季度销量
  2. from (SELECT '2007', '旗舰1店',`旗舰1店$`.车型, left(`旗舰1店$`.`发动机号码-维修代码`,11), right(`旗舰1店$`.`发动机号码-维修代码`,6), (`旗舰1店$`.`1季度销量`)/1, (`旗舰1店$`.`2季度销量`)/1, (`旗舰1店$`.`3季度销量`)/1, (`旗舰1店$`.`4季度销量`)/1
  3. FROM `E:\竞赛基础题\2007年`.`旗舰1店$` `旗舰1店$`
  4. union all
  5. SELECT '2007', '旗舰2店', `旗舰2店$`.车型, left(`旗舰2店$`.`发动机号码-维修代码`,11), right(`旗舰2店$`.`发动机号码-维修代码`,6), null, null, null, (`旗舰2店$`.`4季度销量`)/1
  6. FROM `E:\竞赛基础题\2007年`.`旗舰2店$` `旗舰2店$`
  7. union all
  8. SELECT '2008', '旗舰3店',`旗舰3店$`.车型, left(`旗舰3店$`.`发动机号码-维修代码`,11), right(`旗舰3店$`.`发动机号码-维修代码`,6), (`旗舰3店$`.`1季度销量`)/1, (`旗舰3店$`.`2季度销量`)/1, (`旗舰3店$`.`3季度销量`)/1, null
  9. FROM `E:\竞赛基础题\2008年`.`旗舰3店$` `旗舰3店$`
  10. union all
  11. SELECT '2008', '旗舰4店', `旗舰4店$`.车型, left(`旗舰4店$`.`发动机号码-维修代码`,11), right(`旗舰4店$`.`发动机号码-维修代码`,6), null, (`旗舰4店$`.`2季度销量`)/1, null, (`旗舰4店$`.`4季度销量`)/1
  12. FROM `E:\竞赛基础题\2008年`.`旗舰4店$` `旗舰4店$`)
复制代码

[ 本帖最后由 BIN_YANG168 于 2009-3-23 15:03 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-12 21:34 | 显示全部楼层
答案已发送,占位。
导入外部数据+新建数据库查询+Microsoft Query+SQL语句+创建数据透视表:
  1. SELECT '2007'+'年' ,
  2.        '旗舰1店' ,
  3.        `旗舰1店$`.车型 ,
  4.        mid(`旗舰1店$`.`发动机号码-维修代码`,1,11) ,
  5.        mid(`旗舰1店$`.`发动机号码-维修代码`,13,6) ,
  6.        `旗舰1店$`.`1季度销量` ,
  7.        `旗舰1店$`.`2季度销量` ,
  8.        `旗舰1店$`.`3季度销量` ,
  9.        `旗舰1店$`.`4季度销量`
  10. FROM `C:\Documents and Settings\361988\Desktop\竞赛基础题\2007年`.`旗舰1店$` `旗舰1店$`
  11. UNION ALL
  12. SELECT '2007'+'年',
  13.        '旗舰2店',
  14.        `旗舰2店$`.车型,
  15.        mid(`旗舰2店$`.`发动机号码-维修代码`,1,11) ,
  16.        mid(`旗舰2店$`.`发动机号码-维修代码`,13,6) ,
  17.        NULL,
  18.        NULL,
  19.        NULL,
  20.        `旗舰2店$`.`4季度销量`
  21. FROM `C:\Documents and Settings\361988\Desktop\竞赛基础题\2007年`.`旗舰2店$` `旗舰2店$`
  22. UNION ALL
  23. SELECT '2008'+'年',
  24.        '旗舰3店',
  25.        `旗舰3店$`.车型,
  26.        mid(`旗舰3店$`.`发动机号码-维修代码`,1,11) ,
  27.        mid(`旗舰3店$`.`发动机号码-维修代码`,13,6) ,
  28.        `旗舰3店$`.`1季度销量` ,
  29.        `旗舰3店$`.`2季度销量` ,
  30.        `旗舰3店$`.`3季度销量` ,
  31.        NULL
  32. FROM `C:\Documents and Settings\361988\Desktop\竞赛基础题\2008年`.`旗舰3店$` `旗舰3店$`
  33. UNION ALL
  34. SELECT '2008'+'年',
  35.        '旗舰4店',
  36.        `旗舰4店$`.车型,
  37.        mid(`旗舰4店$`.`发动机号码-维修代码`,1,11) ,
  38.        mid(`旗舰4店$`.`发动机号码-维修代码`,13,6) ,
  39.        NULL,
  40.        `旗舰4店$`.`2季度销量` ,
  41.        NULL,
  42.        `旗舰4店$`.`4季度销量`
  43. FROM `C:\Documents and Settings\361988\Desktop\竞赛基础题\2008年`.`旗舰4店$` `旗舰4店$`
复制代码

[ 本帖最后由 BIN_YANG168 于 2009-3-23 15:04 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-13 12:27 | 显示全部楼层
yoka不等我,呵呵。占位

[ 本帖最后由 BIN_YANG168 于 2009-3-26 21:24 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-15 08:11 | 显示全部楼层
答案已发,占位。
导入外部数据+新建数据库查询+Microsoft Query+SQL语句+创建数据透视表:
  1. 导入外部数据+新建数据库查询+Microsoft Query+SQL语句+创建数据透视表
  2. SELECT '2007年'as 年份,'旗舰1店'as 4S店名,车型,left([发动机号码-维修代码],11) as 发动机号码,right([发动机号码-维修代码],6) as 维修代码,[1季度销量],[2季度销量],[3季度销量],[4季度销量]
  3. FROM `C:\Documents and Settings\Administrator\桌面\2007年`.`旗舰1店$` `旗舰1店$`
  4. UNION ALL SELECT '2007年'as 年份,'旗舰2店'as 4S店名,车型,left([发动机号码-维修代码],11) as 发动机号码,right([发动机号码-维修代码],6) as 维修代码,0 as 1季度销量,0 as 2季度销量,0 as 3季度销量,[4季度销量]
  5. FROM `C:\Documents and Settings\Administrator\桌面\2007年`.`旗舰2店$` `旗舰2店$`
  6. UNION ALL SELECT '2008年'as 年份,'旗舰3店'as 4S店名,车型,left([发动机号码-维修代码],11) as 发动机号码,right([发动机号码-维修代码],6) as 维修代码,[1季度销量],[2季度销量],[3季度销量],0 as 4季度销量
  7. FROM `C:\Documents and Settings\Administrator\桌面\2008年`.`旗舰3店$` `旗舰3店$`
  8. UNION ALL SELECT '2008年'as 年份,'旗舰4店'as 4S店名,车型,left([发动机号码-维修代码],11) as 发动机号码,right([发动机号码-维修代码],6) as 维修代码,0 as 1季度销量,[2季度销量],0 as 3季度销量,[4季度销量]
  9. FROM `C:\Documents and Settings\Administrator\桌面\2008年`.`旗舰4店$` `旗舰4店$`
复制代码

[ 本帖最后由 BIN_YANG168 于 2009-3-23 15:06 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-15 18:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
呵呵,应该说是SQL水平测试才对。
已经从园子里找到答案了。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-18 10:40 | 显示全部楼层
此题很实用,强!
邮件已发,占位

导入外部数据+OLE DB查询+SQL语句+创建数据透视表:
  1. select "2007年" as `年份`,* from (SELECT "旗舰1店$" as `4S店名`,`车型`, left(`旗舰1店$`.`发动机号码-维修代码`,11) as `发动机号码`, right(`旗舰1店$`.`发动机号码-维修代码`,6) as `维修代码`,`1季度销量`,`2季度销量`, `3季度销量`,`4季度销量`
  2. FROM `D:\竞赛基础题\2007年`.`旗舰1店$`
  3. UNION ALL
  4. SELECT "旗舰2店$" as `4S店名`, `车型`, left(`旗舰2店$`.`发动机号码-维修代码`,11) as `发动机号码`, right(`旗舰2店$`.`发动机号码-维修代码`,6) as `维修代码`,0,0,0, `4季度销量`
  5. FROM `D:\竞赛基础题\2007年`.`旗舰2店$`)
  6. UNION ALL
  7. select "2008年" as `年份`,* from (SELECT "旗舰3店$" as `4S店名`, `车型`, left(`旗舰3店$`.`发动机号码-维修代码`,11) as `发动机号码`, right(`旗舰3店$`.`发动机号码-维修代码`,6) as `维修代码`, `1季度销量`,`2季度销量`,`3季度销量`, 0
  8. FROM `D:\竞赛基础题\2008年`.`旗舰3店$`
  9. UNION ALL
  10. SELECT "旗舰4店$" as `4S店名`,`车型`, left(`旗舰4店$`.`发动机号码-维修代码`,11) as `发动机号码`, right(`旗舰4店$`.`发动机号码-维修代码`,6) as `维修代码`, 0, `2季度销量`, 0, `4季度销量`
  11. FROM `D:\竞赛基础题\2008年`.`旗舰4店$`)
复制代码

[ 本帖最后由 BIN_YANG168 于 2009-3-23 15:08 编辑 ]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2009-3-18 16:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
答案已发,跑进来占个座
导入外部数据+新建数据库查询+Microsoft Query+SQL语句+创建数据透视表:
  1. SELECT 2007 ,1 , a.`1季度销量`, a.`2季度销量`, a.`3季度销量`, a.`4季度销量`, a.车型, left(a.`发动机号码-维修代码`,11),right(a.`发动机号码-维修代码`,6) FROM `d:\work\2007年.xls`.`旗舰1店$` a union SELECT 2007 ,2 , 0 , 0 , 0 , b.`4季度销量`, b.车型, left(b.`发动机号码-维修代码`,11),right(b.`发动机号码-维修代码`,6) FROM `d:\work\2007年.xls`.`旗舰2店$` b union SELECT 2008 ,3 , c.`1季度销量`, c.`2季度销量`, c.`3季度销量`, 0 , c.车型, left(c.`发动机号码-维修代码`,11),right(c.`发动机号码-维修代码`,6) FROM `d:\work\2008年.xls`.`旗舰3店$` c union SELECT 2008 ,4 , 0 , d.`2季度销量`, 0 , d.`4季度销量`, d.车型, left(d.`发动机号码-维修代码`,11),right(d.`发动机号码-维修代码`,6) FROM `d:\work\2008年.xls`.`旗舰4店$` d
复制代码
页字段“4S店名”数据项名称与答题演示不符,后期也未进行修改,不得分!

[ 本帖最后由 BIN_YANG168 于 2009-3-23 15:11 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-3-23 15:12 | 显示全部楼层
我的答案,导入外部数据+OLE DB查询+SQL语句+创建数据透视表,请将附件解压缩到D盘根目录下:
  1. SELECT "2007年", * FROM (SELECT "旗舰1店",车型, LEFT([发动机号码-维修代码],11),RIGHT([发动机号码-维修代码],6) , [1季度销量],[2季度销量],[3季度销量],[4季度销量] from [D:\竞赛基础题\2007年`.`旗舰1店$] union all  SELECT "旗舰2店",车型, LEFT([发动机号码-维修代码],11),RIGHT([发动机号码-维修代码],6) ,0 as [1季度销量],0 as [2季度销量],0 as [3季度销量],[4季度销量] from [D:\竞赛基础题\2007年`.`旗舰2店$]) UNION ALL SELECT "2008年", * FROM (SELECT "旗舰3店",车型, LEFT([发动机号码-维修代码],11),RIGHT([发动机号码-维修代码],6) ,[1季度销量],[2季度销量],[3季度销量],0 as [4季度销量]  from [D:\竞赛基础题\2008年`.`旗舰3店$] UNION ALL SELECT "旗舰4店",车型, LEFT([发动机号码-维修代码],11),RIGHT([发动机号码-维修代码],6),0 as [1季度销量],[2季度销量],0 as [3季度销量],[4季度销量]  from [D:\竞赛基础题\2008年`.`旗舰4店$])
复制代码
演示文件:

另外一种创建方法的演示:(借用YOKA的SQL代码)


[ 本帖最后由 BIN_YANG168 于 2009-3-24 23:14 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2009-3-23 15:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
杨兄 透视表的应用学问可真大
有空可否在此贴顺便给我们大家介绍一下: 诸如此类在创建透视表时的所需要用的的
SQL语句的详细介绍 比如语法 规则什么的(这方面我是个菜鸟,不知道这样说对不对)
还望杨兄不吝赐教!

TA的精华主题

TA的得分主题

发表于 2009-3-23 20:52 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

出多几次这样的题目,估计就会学好SQL在透视表的应用了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-27 13:58 , Processed in 0.047411 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表