首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >进度4GL查询

进度4GL查询
EN

Stack Overflow用户
提问于 2013-08-26 12:55:02
回答 2查看 1.4K关注 0票数 2

我对这门语言很陌生,有一些问题可以理解查询。

例如:

有两个数据库表:仓库,产品。因此,每个仓库可以有多个产品和产品可以存储在不同的仓库。

代码语言:javascript
复制
Query:
   for each warehouse,
       each product:
   display warehouse.name, product.prodcode.
end.

显示器会喜欢的

代码语言:javascript
复制
warehousename   productcode
awarehouse       SKA-301

因此,对于这个结果,这些列显示完全独立的结果,例如。斯卡-301产品不得在外地.或者它会把产品陈列在房间里?如果产品和仓库没有相关的领域怎么办?

请帮帮我。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2013-08-26 14:02:35

在您展示的代码中,您将在仓库的每一次迭代中获得每个产品。

要获得特定于特定仓库的产品,您需要在join的第2子句中添加哪些条件。假设您有一个符合此目的的product.warehouseName字段.

代码语言:javascript
复制
for each warehouse no-lock,
  each product no-lock where product.warehouseName = warehouse.name:

  display
    warehouse.name
    product.prodcode
  .

end.

(如果product.warehouseName上没有索引,这将是非常低效的。)

票数 4
EN

Stack Overflow用户

发布于 2013-08-26 15:31:19

您的查询是此展开版本的紧凑版本。

代码语言:javascript
复制
for each warehouse:
   for each product:
      display warehouse.name, product.prodcode. 
   end.
end.

他们俩的成就是一样的。我建议,既然您开始扩展查询,并且一旦您理解了这些关系,那么每个版本都会返回到紧凑型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18444665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档