a:=array(
("ckey":"A","aValue":1),
("ckey":"A","aValue":2),
("ckey":"B","aValue":2),
("ckey":"B","aValue":1),
("ckey":"C","aValue":2),
("ckey":"C","aValue":3),
("ckey":"C","aValue":-1));
t:=array(); //新定义一个数组
//-按ckey列进行分组后,取按'aValue'的顺序排序后的第一行进行合并
select t&=select drange(0 to 0)* from thisgroup order by ['aValue'] end as nil
from a group by ['ckey'] end;
return t;