comparison tests/agg.ur @ 1194:601a77af0477

'AS' clauses for expression columns may be omitted
author Adam Chlipala <adamc@hcoop.net>
date Thu, 25 Mar 2010 16:41:51 -0400
parents ad9829c3c12c
children
comparison
equal deleted inserted replaced
1193:1da49fd79e20 1194:601a77af0477
1 table t1 : {A : int, B : string, C : float} 1 table t1 : {A : int, B : string, C : float}
2 table t2 : {A : float, D : int, E : option string} 2 table t2 : {A : float, D : int, E : option string}
3 3
4 val q1 = (SELECT COUNT( * ) AS X FROM t1) 4 val q1 : sql_query [] _ _ = (SELECT COUNT( * ) FROM t1)
5 val q2 = (SELECT AVG(t1.A) AS X FROM t1) 5 val q2 : sql_query [] _ _ = (SELECT AVG(t1.A) FROM t1)
6 val q3 = (SELECT SUM(t1.C) AS X FROM t1) 6 val q3 : sql_query [] _ _ = (SELECT SUM(t1.C) FROM t1)
7 val q4 = (SELECT MIN(t1.B) AS X, MAX(t1.A) AS Y FROM t1) 7 val q4 : sql_query [] _ _ = (SELECT MIN(t1.B), MAX(t1.A) FROM t1)
8 val q5 = (SELECT SUM(t1.A) AS X FROM t1 GROUP BY t1.B) 8 val q5 : sql_query [] _ _ = (SELECT SUM(t1.A) FROM t1 GROUP BY t1.B)
9 val q6 = (SELECT COUNT(t2.E) AS N FROM t2 GROUP BY t2.D) 9 val q6 = (SELECT COUNT(t2.E) FROM t2 GROUP BY t2.D)
10 10
11 fun main () : transaction page = 11 fun main () : transaction page =
12 xml <- queryX q6 (fn r => <xml>{[r.N]};</xml>); 12 xml <- queryX q6 (fn r => <xml>{[r.1]};</xml>);
13 return <xml><body>{xml}</body></xml> 13 xml2 <- queryX q4 (fn r => <xml>{[r.1]}, {[r.2]};</xml>);
14 return <xml><body>{xml}<br/>{xml2}</body></xml>