回复:数据查询功能

t1122

  • 帖子

    73
  • 精华

    1
  • 被关注

    5

论坛等级:游士

注册时间:2011-04-14

普通 普通 如何晋级?

发布于 2011-08-03 01:47:50

25楼

下面是双表查询的循环。最后再提醒一下:频繁打开db块,又采用了双循环,程序整体效率不高,可以考虑单层循环用查表fc85来做,也许效率会高一些,未经验证,不过需要改db的结构。如果db内容特别多的话,可以采用上位机来做。

FUNCTION FC112 : void

VAR_TEMP
i:INT;
j:INT;
m:INT;
END_VAR
m:=0;
FOR i:=0 TO 396 BY 4 DO
//db23.dbd[i]:=db21.dbd[i];
j:=0;
WHILE j<=396 DO
IF db22.dbd[j]=db21.dbd[i] THEN
db23.dbd[m]:=db22.dbd[j];
j:=396;
m:=m+4;
END_IF;
j:=j+4;
END_while;
END_FOR;

END_FUNCTION
就像找找偷懒的诀窍
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54773条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。