Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

交叉表查询的问题

风水师  发表于:2009-05-09 19:08:28  
复制

 

照葫芦画瓢,但是运行的时候,就出现这个问题了,不知道问题出在哪儿。

 

Top
华尔街风水师 发表于:2009-05-09 19:14:26

 

这是书中的范例。运行的结果。



华尔街风水师 发表于:2009-05-09 19:22:52

TRANSFORM Count(飞狐工作室.身份证号) AS 人数
SELECT 飞狐工作室.部门
FROM 飞狐工作室
GROUP BY 飞狐工作室.部门
PIVOT Month([出生日期]);

上面是书中SQL的代码。

 

TRANSFORM Count(飞狐工作室.身份证号) AS 身份证号之计数
SELECT 飞狐工作室.部门, Count(飞狐工作室.身份证号) AS [总计 身份证号]
FROM 飞狐工作室
GROUP BY 飞狐工作室.部门
PIVOT Format([出生日期],"mmm") In ("一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");

这是自己按向导操作得来的。

就出现



华尔街风水师 发表于:2009-05-09 20:01:34
根据我本人的实践,如果在设计视图中调试的话,做不出来,但是你在SQL视图中调试的话,一调一个准。象MONTH([出生日期])就可以出现,如果在设计视图中,总是要带一个表达式1之类的字样。

蒋元根 发表于:2009-05-10 09:57:42

给你做了个例子:供参考

1.TRANSFORM Count(人员.身份证号码) AS 人数
SELECT 人员.部门
FROM 人员
GROUP BY 人员.部门
PIVOT CStr(Month(IIf(Len([身份证号码])=15,DateSerial("19" & Mid([身份证号码],7,2),Mid([身份证号码],9,2),Mid([身份证号码],11,2)),DateSerial(Mid([身份证号码],7,4),Mid([身份证号码],11,2),Mid([身份证号码],13,2))))) & "月"In ("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");


2.TRANSFORM Count(人员.身份证号码) AS 人数
SELECT 人员.部门
FROM 人员
GROUP BY 人员.部门
PIVOT Month(IIf(Len([身份证号码])=15,DateSerial("19" & Mid([身份证号码],7,2),Mid([身份证号码],9,2),Mid([身份证号码],11,2)),DateSerial(Mid([身份证号码],7,4),Mid([身份证号码],11,2),Mid([身份证号码],13,2))))  In (1,2,3,4,5,6,7,8,9,10,11,12);

 

点击下载此附件

总记录:4篇  页次:1/1 9 1 :