回 帖 发 新 帖 刷新版面

主题:数组变量怎么引用,求

DIMENSION gs(29)
gs(1)="第1支"
gs(2)="第2支"
gs(3)="第3支"
gs(4)="第4支"
gs(5)="第5支"
gs(6)="第6支"
gs(7)="特码"
gs(8)="总分"
gs(9)="第1生肖"
gs(10)="第2生肖"
gs(11)="第3生肖"
gs(12)="第4生肖"
gs(13)="第5生肖"
gs(14)="第6生肖"
gs(15)="特生肖"
gs(16)="第1合数"
gs(17)="第2合数"
gs(18)="第3合数"
gs(19)="第4合数"
gs(20)="第5合数"
gs(21)="第6合数"
gs(22)="特合数"
gs(23)="第1尾数"
gs(24)="第2尾数"
gs(25)="第3尾数"
gs(26)="第4尾数"
gs(27)="第5尾数"
gs(28)="第6尾数"
gs(29)="特尾数"
USE kjsj

FOR k = 1 TO 28
    FOR j = 2 TO 29
       SELECT gs(k),gs(j),和 FROM kjsj INTO CURSOR lsb
       REPLACE lsb.和 WITH  lsb.gs(k)+lsb.gs(j)

     ENDFOR
ENDFOR 

错在哪,求助
我要的得到的是选择表kjsj中的第1支,第2支,。。。进入表lsb

回复列表 (共7个回复)

沙发

你的目的是什么?

板凳

S我没有多用过select
这个
SELECT gs(k),gs(j),和 FROM kjsj INTO CURSOR lsb
是什么意思/?

3 楼

表kjsj有字段第1支,第2支,。。。。,和
我要得到的是选择表kjsj中的第1支,第2支,和。入表lsb中
第1支,第3支,和 。。。第1支,第4支,和。。。。等等
用数组变量gs(k),gs(j)来替换字段名这样有什么问题吗
就这句SELECT gs(k),gs(j),和 FROM kjsj INTO CURSOR lsb


4 楼

完全可以参考这个实例:

http://bbs.pfan.cn/post-307668.html

5 楼

看来好像是GS的组合.
是否可以这样设计表结构:
第一张表 GsInfo 表,就用于存Gs信息,结构:
GsBh,GsMc
1    第1支
2    第2支
3    第3支

第二张表 Kjsj(不知道干什么,猜测):

Pbh(人员编号),Gsbh,GsVal
1             1    'AA'
1             2    'BB'
1             3    'CC'
2             1    'DD'
2             2    'EE'
3             3    'FF'

这样要得到某个人的GsVal的两两组合的话,连接一下就好像可以了.
没具体试.
做个标记先.

6 楼

SELECT (&gs(k)),(&gs(j)),和 FROM kjsj INTO CURSOR lsb 


基本上可以了,能解释下吗,还有问题是得到的表lsb字段名不是gs(k)和gs(j)所替代的字符比如k=1,j=3是第1支,第3支,而是exp-1,exp-2,还有这句也不能运算REPLACE all lsb.和 WITH lsb.gs(k)+lsb.gs(j) 
为何

7 楼

select * from gsinfo

Gsbh  Gsmc    
---- -------
1    第1支
2    第2支
3    第3支
4    第4支
5    第5支
6    第6支

(所影响的行数为 6 行)


select * from Kjsj

Pbh  Gsbh Gsval   
--- ------- -----
1    1    鼠
1    2    牛
1    3    虎
1    4    兔
1    5    龙
1    6    蛇
2    1    鼠
2    2    牛
2    3    虎
2    4    兔
2    5    龙
2    6    蛇

(所影响的行数为 12 行)


select a.pbh,a.gsbh,b.gsmc,a.gsbh_1,c.gsmc,a.gsval from (
select a.pbh,a.gsbh,b.gsbh as Gsbh_1,a.gsval+'+'+b.gsval as Gsval from kjsj a,kjsj b where a.pbh=b.pbh and a.gsbh<>b.gsbh and b.pbh=1
)a left join gsinfo b on a.gsbh=b.gsbh left join gsinfo c on a.gsbh_1=c.gsbh


pbh  gsbh gsmc    gsbh_1   gsmc    gsval    
----     ------- ------  -------- ------
1    1    第1支     2    第2支     鼠+牛
1    1    第1支     3    第3支     鼠+虎
1    1    第1支     4    第4支     鼠+兔
1    1    第1支     5    第5支     鼠+龙
1    1    第1支     6    第6支     鼠+蛇
1    2    第2支     1    第1支     牛+鼠
1    2    第2支     3    第3支     牛+虎
1    2    第2支     4    第4支     牛+兔
1    2    第2支     5    第5支     牛+龙
1    2    第2支     6    第6支     牛+蛇
1    3    第3支     1    第1支     虎+鼠
1    3    第3支     2    第2支     虎+牛
1    3    第3支     4    第4支     虎+兔
1    3    第3支     5    第5支     虎+龙
1    3    第3支     6    第6支     虎+蛇
1    4    第4支     1    第1支     兔+鼠
1    4    第4支     2    第2支     兔+牛
1    4    第4支     3    第3支     兔+虎
1    4    第4支     5    第5支     兔+龙
1    4    第4支     6    第6支     兔+蛇
1    5    第5支     1    第1支     龙+鼠
1    5    第5支     2    第2支     龙+牛
1    5    第5支     3    第3支     龙+虎
1    5    第5支     4    第4支     龙+兔
1    5    第5支     6    第6支     龙+蛇
1    6    第6支     1    第1支     蛇+鼠
1    6    第6支     2    第2支     蛇+牛
1    6    第6支     3    第3支     蛇+虎
1    6    第6支     4    第4支     蛇+兔
1    6    第6支     5    第5支     蛇+龙

(所影响的行数为 30 行)

这样GsVal就是Pbh为1的组合值了(不包括编号一样的组合).

我来回复

您尚未登录,请登录后再回复。点此登录或注册