VSelect返回单个值,主要用于如sumof、countof这类统计中,其他功能与Select同,只是Select返回的结果一般为二维数组。
当需要返回某个字段的最大值的时候,采用(select maxof( ["F1"] ) from table end)[0]["Expr1"]来描述太复杂,而采用VSelect maxof(["F1"] from table end就可以直接返回最大值。
如:
t:=zeros(10,"A");
t[:,"A"]:=1->10;
v1:=select sumof(["A"]) from t end;
v2:=vselect sumof(["A"]) from t end;
其中,v1的结果为:array(("Expr1":55.0)),要得到55这个数值,需要进一步:v1[0,"Expr1"]
v2的结果为:55