| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1340 人关注过本帖
标题:求简化的思路
只看楼主 加入收藏
zhousr
Rank: 2
等 级:论坛游民
威 望:1
帖 子:266
专家分:47
注 册:2019-3-8
结帖率:94.59%
收藏
已结贴  问题点数:20 回复次数:12 
求简化的思路
一共有200多个专业,考生提供10个意向专业:zy1 法学,zy2 金融学,。。。。
满足这10个专业要求的记录已从招生计划表(zsjh,2万来条记录)中筛选出来放入表A。
现在要做的是:如果zy1是法学专业,那么要把“法律”专业的记录也追加到表A;zy2是金融学专业,那么要把“金融管理”专业的记录也追加到表A,。。。
现在的代码是:
SELECT zsjh
GO TOP
SCAN
  SCATTER MEMO TO MM &&  有备注字段
  FOR i=1 TO 10  &&按10个专业循环
     cc="zy"+alltrim(STR(i))
     DO CASE
        CASE &cc="法学"
            IF "法律"$zymc
                INSERT INTO a FROM ARRAY MM
            ENDIF
       CASE &cc="金融学"
            IF "金融管理"$zymc
                INSERT INTO a FROM ARRAY MM
            ENDIF
     。。。。。。。  (有200多个case)
       endcase
endfor

这样是可以得到结果的。但是10个专业要一个个过,每一个专业都要扫一次表,感觉好绕,应该有更简洁的方法。
各位,麻烦给点提示?
搜索更多相关主题的帖子: 专业 思路 记录 INTO CASE 
2023-03-29 14:54
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:4 
对汉字用 $ 来判断有可能会出现意想不到的结果。

发挥关系数据库的特长,理顺一下数据之间的关系,分表分类编码建立关联。
简单用内存变量模拟意思一下
程序代码:
ALINES(zy,"法学,金融学",",")
ALINES(zy2,"法律,金融管理",",")
zymc = "法律、律法、金融管理、管理金融"
FOR i=1 TO ALEN(zy)
    ati = ATCC(zy2[i],zymc)
    IF ati > 0
        ? zy[i],zy2[i],ati
    ENDIF 
ENDFOR



2023-03-29 15:51
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:4 
方便的话,上传相关的文件,这样才有更深刻的印象

坚守VFP最后的阵地
2023-03-29 16:29
shizi0
Rank: 6Rank: 6
等 级:侠之大者
威 望:4
帖 子:142
专家分:411
注 册:2012-10-2
收藏
得分:4 
我觉得:技术上,这个是系统逻辑设计问题,不是编程问题。业务上,这是大类招生的概念,不应该通过繁杂的编程来处理,其他业务都会这么复杂,不是一个程序块的问题;今后也会变化。
比如,应该有“专业大类--专业”的逻辑,“法学大类”下面有“法学”、“法律”....,父子表二级构架。不分表的话,至少通过专业编码区分类,比如“01”--“0101”、“0102”....
这样程序实现就只管大类了。
2023-03-30 13:42
csyx
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:火星
等 级:版主
威 望:37
帖 子:709
专家分:2848
注 册:2018-3-13
收藏
得分:4 
以下是引用shizi0在2023-3-30 13:42:55的发言:
我觉得:技术上,这个是系统逻辑设计问题,不是编程问题。业务上,这是大类招生的概念,不应该通过繁杂的编程来处理,其他业务都会这么复杂,不是一个程序块的问题;今后也会变化。
比如,应该有“专业大类--专业”的逻辑,“法学大类”下面有“法学”、“法律”....,父子表二级构架。不分表的话,至少通过专业编码区分类,比如“01”--“0101”、“0102”....
这样程序实现就只管大类了。

说到点上了,专业代码有标准的
101   哲学                                             
10101 马克思主义哲学                                    
10102 中国哲学                                          
10103 外国哲学                                          
10104 逻辑学                                            
10105 伦理学                                            
10106 美学                                             
10107 宗教学                                            
10108 科学技术哲学                                      
201   理论经济学                                       
20101 政治经济学                                       
20102 经济思相史                                       
20103 经济史                                            
20104 西方经济学                                       
20105 世界经济                                          
20106 人口、资源与环境经济学                           
202   应用经济学                                       
20201 国民经济学                                       
20202 区域经济学                                       
20203 财政学                                            
20204 金融学                                            
20205 产业经济学                                       
20206 国际贸易学                                       
20207 劳动经济学                                       
20208 统计学                                            
20209 数量经济学                                       
20210 国防经济                                          
301   法学                                             
30101 法学理论                                          
30102 法律史                                            
30103 宪法学与行政法学.                                 
30104 刑法学                                            
30105 民商法学                                          
30106 诉讼法学                                          
30107 经济法学                                          
30108 环境与资源保护法学                                
30109 国际法学                                          
30110 军事法学                                          
302   政治学                                            
。。。。

这家伙很懒,啥也没留下
2023-03-30 14:48
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1790
专家分:3389
注 册:2012-2-29
收藏
得分:4 
回复 5楼 csyx
赞同!
2023-03-30 17:44
pvm2000
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:180
专家分:312
注 册:2022-12-22
收藏
得分:4 
其实电脑最不怕麻烦,最不怕循环,最不怕绕
2023-03-30 19:40
zhousr
Rank: 2
等 级:论坛游民
威 望:1
帖 子:266
专家分:47
注 册:2019-3-8
收藏
得分:0 
不好意思,因为只想优化一下计算过程,所以没说 得很清楚,浪费大家时间了。高等学校专业目录有三个:普通高校本科专业目录、高职院校本科专业目录、高职专科目录。大家比较熟悉的是普通高校本科专业目录,这三个目录间没有直接的对应关系。比如:普通高校本科专业“法学”,高职本科中叫“法律”,高职(专科)专业对应的是“法律事务”。这不是专业大类----专业的关系,也不是大类招生的问题。我现在想要实现的是:根据输入的普通本科专业名称,找出相应的高职本科、专科对应的专业的招生计划。比如,输入“法学”,我从招生计划中找出法学专业的所有计划到A表,并且要找出专业名称为“法律”、“法律事务”的招生计划,追加到表A中。
受吹版的启发,已经有了一个思路,正在完善,谢谢大家!
2023-03-31 08:58
zhousr
Rank: 2
等 级:论坛游民
威 望:1
帖 子:266
专家分:47
注 册:2019-3-8
收藏
得分:0 
以下是引用pvm2000在2023-3-30 19:40:16的发言:

其实电脑最不怕麻烦,最不怕循环,最不怕绕


关键是把时间绕进去了
2023-03-31 08:59
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
以下是引用zhousr在2023-3-31 08:58:15的发言:

不好意思,因为只想优化一下计算过程,所以没说 得很清楚,浪费大家时间了。高等学校专业目录有三个:普通高校本科专业目录、高职院校本科专业目录、高职专科目录。大家比较熟悉的是普通高校本科专业目录,这三个目录间没有直接的对应关系。比如:普通高校本科专业“法学”,高职本科中叫“法律”,高职(专科)专业对应的是“法律事务”。这不是专业大类----专业的关系,也不是大类招生的问题。我现在想要实现的是:根据输入的普通本科专业名称,找出相应的高职本科、专科对应的专业的招生计划。比如,输入“法学”,我从招生计划中找出法学专业的所有计划到A表,并且要找出专业名称为“法律”、“法律事务”的招生计划,追加到表A中。
受吹版的启发,已经有了一个思路,正在完善,谢谢大家!

自己解决更好

[此贴子已经被作者于2023-3-31 09:54编辑过]


坚守VFP最后的阵地
2023-03-31 09:08
快速回复:求简化的思路
数据加载中...
 
   



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

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