table t : { A : int, B : string } view v = SELECT t.A AS X FROM t fun main () = rows <- queryX (SELECT * FROM v) (fn r => {[r.V.X]}); return {rows}