工厂班长的述职报告:vfp小程序段问题(急,在线等)

来源:百度文库 编辑:中科新闻网 时间:2024/04/30 05:44:01
第一个问题.
我想在命令行里写一小段程序,目的是将数据表里所有记录的学号字段(6位)的内容截取前四个字符填充到字段2(6位,后两位为00)中,怎么写呀???

第二个问题.一个表的政治面貌是用数字表示的,对应文字在另一个表中,有对应编号,我想让他们合成一个表,怎么写程序?????

在线等,100赏,全部家当!!!!!!!!
第一个问题已经解决,第二个问题等待中

详细点说可以么?

sele 1
use a
sele 2
use b
sele a.姓名,b.政治面貌 from a,b where b.政治面貌代码 in (sele * from b)

这样么?不能运行啊

你用循环的话就用这段代码:
close all
sele 1
use 表2
sele 2
use 表1
do while not eof()
code=alltrim(政治面貌代码)
sele 表2
locate for alltrim(政治面貌代码)==code
name=政治面貌
sele 表1
replace 政治面貌代码 with name
skip
enddo
brows
注意:你要保证表1的“政治面貌代码”字段的长度大于等于表2的“政治面貌”字段的长度

有个SUBSTR()函数,从字符表达式中截取一个子串,然后返回这个字符串;
所以,这两个字段要用STRING AAA, BBB

BBB=SUBS(AAA,6,4)+‘00’

SELECT 表一(姓名),表二(政治面貌) FROM 表一,表二 WHERE 政治面貌代表数IN(SELECT* FROM 表二 )

第一个简单,我给你解答第二个,直接这样就行了,不用再in了:

select * from a,b where a.政治面貌代码=b.政治面貌代码

select是不用打开表的,直接读取就行了