标题:求:select ... from 表 循环
只看楼主
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
结帖率:100%
已结贴  问题点数:90 回复次数:9 
求:select ... from 表 循环
各位老师好!
我想用for x=1 to 60
        SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_111 WHERE n2=N2b INTO TABLE sn1n2_111
   .......
    ........
 endfor
的方法,将下面n1n2_111--n1n2_170共60个select语句循环。
但没有查到from后面的表可以用变量表示的例子,也没查到into table后面的表可以用变量表示的例子。
不知道这个想法是否可行,如可行,请老师帮助写出程序。
如不行就得另想办法了。
还请各位老师指导帮助。
下面是select语句排列
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_111 WHERE n2=N2b INTO TABLE sn1n2_111
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_112 WHERE n2=N2b INTO TABLE sn1n2_112
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_113 WHERE n2=N2b INTO TABLE sn1n2_113
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_114 WHERE n2=N2b INTO TABLE sn1n2_114
...............
...............
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_166 WHERE n2=N2b INTO TABLE sn1n2_166
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_167 WHERE n2=N2b INTO TABLE sn1n2_167
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_168 WHERE n2=N2b INTO TABLE sn1n2_168
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_169 WHERE n2=N2b INTO TABLE sn1n2_169
SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_170 WHERE n2=N2b INTO TABLE sn1n2_170

谢谢各位老师!
搜索更多相关主题的帖子: select from WHERE INTO TABLE 
2022-05-24 09:06
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:20 
可以试试用宏替换&,不过在调试时要先显示字符串变量是否符合要求,特别是组合以后会不会产生空格影响到宏替换。

活到老,学到老! http://www. E-mail:hu-jj@
2022-05-24 09:55
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:54
帖 子:802
专家分:1914
注 册:2015-12-30
得分:0 
for x=1 to 60
    xnum = transform(110+x)
    SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_&xnum WHERE n2=N2b INTO TABLE sn1n2_&xnum
endfor
2022-05-24 10:47
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
得分:0 
回复 2楼 hu9jj
感谢老师的指点。
我不懂“字符串变量”怎么体现,在那个位置体现。
“组合”是什么意思,谁和谁组合,怎么组合。
还请老师给与具体指导。
2022-05-24 10:49
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
以下是引用yd1954在2022-5-24 10:49:18的发言:

感谢老师的指点。
我不懂“字符串变量”怎么体现,在那个位置体现。
“组合”是什么意思,谁和谁组合,怎么组合。
还请老师给与具体指导。

3楼狐友已经给出了代码,按照这个代码应该不会错的。
宏替换是个非常不错的方法,熟练掌握后可以得到事半功倍的效果。

活到老,学到老! http://www. E-mail:hu-jj@
2022-05-24 12:34
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
得分:0 
回复 3楼 laowan001
非常感谢老师的帮助。
想问一下:
 xnum = transform(110+x)  “110+x”等同于 n=n+1 吗?
2022-05-25 08:31
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:54
帖 子:802
专家分:1914
注 册:2015-12-30
得分:70 
以下是引用yd1954在2022-5-25 08:31:30的发言:

非常感谢老师的帮助。
想问一下:
 xnum = transform(110+x)  “110+x”等同于 n=n+1 吗?


这个要结合程序来看
for x=1 to 60
    xnum = transform(110+x)    && xnum=111~170,并不是n=n+1,在for x=1 to 60循环中,其实每次x=x+1
    SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_&xnum WHERE n2=N2b INTO TABLE sn1n2_&xnum
endfor

上面程序与下面的结果一样
for x=111 to 170
    xnum = transform(x)
    SELECT h1,h2,h3,n2 FROM 3d999个数,n1n2_&xnum WHERE n2=N2b INTO TABLE sn1n2_&xnum
endfor
2022-05-25 08:57
yd1954
Rank: 2
来 自:辽宁沈阳
等 级:论坛游民
帖 子:143
专家分:21
注 册:2016-7-1
得分:0 
回复 7楼 laowan001
非常感谢老师耐心的解答。
我是1954年出生,大学里又是学汉语的,理解计算机语言费劲。
再次感谢!
2022-05-25 09:08
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:0 
以下是引用yd1954在2022-5-25 09:08:33的发言:

非常感谢老师耐心的解答。
我是1954年出生,大学里又是学汉语的,理解计算机语言费劲。
再次感谢!

原来也是一匹老马啊。我们同庚,但我没有您幸运,没能跨进大学门槛。
计算机语言的基础其实不复杂的,无非就是几类语句:赋值语句、循环语句、分支语句等,不同的语言表现形式不同而已。在您的事例中就是通过循环语句,将自增的变量依次赋值到字符串中,通过查询命令得到需要的结果,其中使用了宏替换的功能。

[此贴子已经被作者于2022-5-25 09:28编辑过]


活到老,学到老! http://www. E-mail:hu-jj@
2022-05-25 09:26
sam_jiang
Rank: 8Rank: 8
等 级:贵宾
威 望:10
帖 子:542
专家分:781
注 册:2021-10-13
得分:0 
以下是引用hu9jj在2022-5-25 09:26:55的发言:


原来也是一匹老马啊。我们同庚,但我没有您幸运,没能跨进大学门槛。
计算机语言的基础其实不复杂的,无非就是几类语句:赋值语句、循环语句、分支语句等,不同的语言表现形式不同而已。在您的事例中就是通过循环语句,将自增的变量依次赋值到字符串中,通过查询命令得到需要的结果,其中使用了宏替换的功能。


还有这么大的老哥在坚持学foxpro啊,可敬可佩!!! 计算机各种语言语法都大同小异,不同的是编译速度,编译方式,那些对学的人来说并不是很重要。不同语言的函数库不同,用的时候要查帮助文件了,融会贯通了之后,什么语言都会了(个人觉得foxpro最简单最实用,哈哈哈)。。。
2022-05-26 21:20



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




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

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