select2

LUA

select2

<map>:select2(foo(key, val))

Itera il contenuto della tabella per chiave e valore ritornando nuovi elementi costruiti dal selettore.

Esempio 211. Esempio select2

local orders = {  {orderid=1, product="Computer", price=1000, year=2010},
 {orderid=1, product="Book",     price=50,   year=2012},
 {orderid=3, product="TV",       price=800,  year=2011},
 ...
}
-- ritorna i tre anni più remunerativi      
local res = XTable(orders):groupby("year")                        
 :select2(function(k, v) return {year=k, totalprice=XTable(v):sum('price')} end)
 :orderbyascending('totalprice')
 :take(3)
 :astable()