| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3833 人关注过本帖
标题:如何做课程安排表的报表?
只看楼主 加入收藏
yafengliang
Rank: 2
等 级:论坛游民
帖 子:111
专家分:35
注 册:2016-2-21
收藏
得分:0 
能否以上面例子给个示例,主要是定位输出数据方面感觉较难!
2018-05-28 22:28
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用yafengliang在2018-5-28 22:28:57的发言:

能否以上面例子给个示例,主要是定位输出数据方面感觉较难!

你先运行我7楼方法二的看看,是不是你要的效果.
2018-05-29 09:03
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:20 
* 方法2:
* 测试数据和表格式
create cursor 课程表(节次 I,课程 C(30),星期 C(20),班级ID I,备注 C(250))
insert into 课程表 values(1,"语文","星期一",1001,"1001班课程表")
insert into 课程表 values(1,"语文","星期二",1001,"1001班课程表")
insert into 课程表 values(1,"语文","星期三",1001,"1001班课程表")
insert into 课程表 values(1,"数学","星期四",1001,"1001班课程表")
insert into 课程表 values(1,"数学","星期五",1001,"1001班课程表")
insert into 课程表 values(2,"英语","星期一",1001,"1001班课程表")
insert into 课程表 values(2,"英语","星期二",1001,"1001班课程表")
insert into 课程表 values(2,"英语","星期三",1001,"1001班课程表")
insert into 课程表 values(2,"物理","星期四",1001,"1001班课程表")
insert into 课程表 values(2,"物理","星期五",1001,"1001班课程表")

BROWSE
图片附件: 游客没有浏览图片的权限,请 登录注册


* 打印前 ,先转换,只打印 1001 班级的课程表
n班级=1001

 SELECT T0.节次,T1.星期一,T2.星期二,T3.星期三,T4.星期四,T5.星期五,T6.星期六,T7.星期日 ;
FROM (SELECT DISTINCT 节次,班级ID FROM 课程表) as T0 ;
 LEFT JOIN (SELECT 课程 as 星期一,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期一") as T1 ;
      ON T0.班级ID=T1.班级ID AND T0.节次=T1.节次 ;
LEFT JOIN (SELECT 课程 as 星期二,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期二") as T2 ;
      ON T0.班级ID=T2.班级ID AND T0.节次=T2.节次 ;
LEFT JOIN (SELECT 课程 as 星期三,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期三") as T3 ;
      ON T0.班级ID=T3.班级ID AND T0.节次=T3.节次 ;
LEFT JOIN (SELECT 课程 as 星期四,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期四") as T4 ;
      ON T0.班级ID=T4.班级ID AND T0.节次=T4.节次 ;
LEFT JOIN (SELECT 课程 as 星期五,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期五") as T5 ;
      ON T0.班级ID=T5.班级ID AND T0.节次=T5.节次 ;
LEFT JOIN (SELECT 课程 as 星期六,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期六") as T6 ;
      ON T0.班级ID=T5.班级ID AND T0.节次=T5.节次 ;   
LEFT JOIN (SELECT 课程 as 星期日,节次,班级ID FROM 课程表 WHERE ALLTRIM(星期)="星期日") as T7 ;
      ON T0.班级ID=T5.班级ID AND T0.节次=T5.节次 ;
WHERE T0.班级ID=n班级 ORDER BY T0.班级ID,T0.节次 INTO CURSOR TMP_课程表
BROWSE
图片附件: 游客没有浏览图片的权限,请 登录注册
2018-05-29 09:08
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
是不是下图的效果
图片附件: 游客没有浏览图片的权限,请 登录注册

坚守VFP最后的阵地
2018-07-28 15:53
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
BB.rar (2.68 KB)

坚守VFP最后的阵地
2018-07-28 15:57
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

坚守VFP最后的阵地
2018-07-28 16:05
yafengliang
Rank: 2
等 级:论坛游民
帖 子:111
专家分:35
注 册:2016-2-21
收藏
得分:0 
是的,就是这种效果!谢谢版主!
2018-07-28 23:45
快速回复:如何做课程安排表的报表?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032453 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved