我怎样才能在 Progress 4gl 中获得相同的结果?
How can i get the same result in Progress 4gl?
如何在 Progress 4GL 中实现这样的查询
SELECT field1, field2 FROM tbl1
WHERE field1 IN (SELECT Field1 FROM tbl2).
我只有 2 个理想,一个是 temp-table,第二个是 CAN-DO() 函数...但是 CAN-DO() 函数使用字符串,所以我必须将这个字段转换为字符串..但这是个坏主意...
我是 Progress 中的新手。
你可以试试这个:
FOR EACH tbl2 FIELDS(tbl2.Field1)
NO-LOCK,
EACH tbl1 FIELDS(tbl1.field1 tbl1.field2)
WHERE tbl1.field1= tbl2.Field1
NO-LOCK:
...
END.
FIELDS
指令是可选的。
如果第二个select比较复杂,你也可以嵌套FOR EACH:
FOR EACH tbl2
WHERE ...
NO-LOCK:
...
FOR EACH tbl1
WHERE tbl1.field1= tbl2.Field1
NO-LOCK:
...
END.
END.
如何在 Progress 4GL 中实现这样的查询
SELECT field1, field2 FROM tbl1
WHERE field1 IN (SELECT Field1 FROM tbl2).
我只有 2 个理想,一个是 temp-table,第二个是 CAN-DO() 函数...但是 CAN-DO() 函数使用字符串,所以我必须将这个字段转换为字符串..但这是个坏主意... 我是 Progress 中的新手。
你可以试试这个:
FOR EACH tbl2 FIELDS(tbl2.Field1)
NO-LOCK,
EACH tbl1 FIELDS(tbl1.field1 tbl1.field2)
WHERE tbl1.field1= tbl2.Field1
NO-LOCK:
...
END.
FIELDS
指令是可选的。
如果第二个select比较复杂,你也可以嵌套FOR EACH:
FOR EACH tbl2
WHERE ...
NO-LOCK:
...
FOR EACH tbl1
WHERE tbl1.field1= tbl2.Field1
NO-LOCK:
...
END.
END.