我有一个临时表ttsales,它包含一个整数类型的字段名t_sales,我想从t_sales中找出最大值和最小值,点击按钮就会显示这些最大值和最低值。我能做什么?
一种可能性是按升序和降序对临时表进行排序。添加索引会有所帮助。如果你不能改变临时表,并且它很大,这可能不是最好的解决方案。
DEFINE TEMP-TABLE ttsales NO-UNDO
FIELD t_sales AS INTEGER
INDEX sales t_sales.
DEFINE VARIABLE iMin AS INTEGER NO-UNDO.
DEFINE VARIABLE iMax AS INTEGER NO-UNDO.
CREATE ttsales.
ASSIGN ttsales.t_sales = 10.
CREATE ttsales.
ASSIGN ttsales.t_sales = 1.
CREATE ttsales.
ASSIGN ttsales.t_sales = 130.
CREATE ttsales.
ASSIGN ttsales.t_sales = 2.
/* Get minimum value */
FOR EACH ttsales BY ttsales.t_sales:
iMin = ttsales.t_sales.
LEAVE.
END.
/* Get maximum value */
FOR EACH ttsales BY ttsales.t_sales DESCENDING:
iMax = ttsales.t_sales.
LEAVE.
END.
DISPLAY iMin iMax.
DEFINE QUERY qry FOR tsales.
OPEN QUERY qry FOR EACH tsales BY t_sales.
GET FIRST qry.
MESSAGE tsales.t_sales.
GET LAST qry.
MESSAGE tsales.t_sales.
根据表的大小,在字段上添加索引。