标题:如何做课程安排表的报表?
只看楼主
yafengliang
Rank: 2
等 级:论坛游民
帖 子:111
专家分:35
注 册:2016-2-21
得分:0 
能否以上面例子给个示例,主要是定位输出数据方面感觉较难!
2018-05-28 22:28
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
以下是引用yafengliang在2018-5-28 22:28:57的发言:

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

你先运行我7楼方法二的看看,是不是你要的效果.
2018-05-29 09:03
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册: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
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
是不是下图的效果

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

坚守VFP最后的阵地
2018-07-28 15:57
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 

坚守VFP最后的阵地
2018-07-28 16:05
yafengliang
Rank: 2
等 级:论坛游民
帖 子:111
专家分:35
注 册:2016-2-21
得分:0 
是的,就是这种效果!谢谢版主!
2018-07-28 23:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-487310-1-1.html




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

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