]> granicus.if.org Git - postgresql/blob - src/test/regress/expected/aggregates.out
Reimplement NUMERIC datatype using base-10000 arithmetic; also improve
[postgresql] / src / test / regress / expected / aggregates.out
1 --
2 -- AGGREGATES
3 --
4 SELECT avg(four) AS avg_1 FROM onek;
5        avg_1        
6 --------------------
7  1.5000000000000000
8 (1 row)
9
10 SELECT avg(a) AS avg_32 FROM aggtest WHERE a < 100;
11        avg_32        
12 ---------------------
13  32.6666666666666667
14 (1 row)
15
16 -- In 7.1, avg(float4) is computed using float8 arithmetic.
17 -- Round the result to 3 digits to avoid platform-specific results.
18 SELECT avg(b)::numeric(10,3) AS avg_107_943 FROM aggtest;
19  avg_107_943 
20 -------------
21      107.943
22 (1 row)
23
24 SELECT avg(gpa) AS avg_3_4 FROM ONLY student;
25  avg_3_4 
26 ---------
27      3.4
28 (1 row)
29
30 SELECT sum(four) AS sum_1500 FROM onek;
31  sum_1500 
32 ----------
33      1500
34 (1 row)
35
36 SELECT sum(a) AS sum_198 FROM aggtest;
37  sum_198 
38 ---------
39      198
40 (1 row)
41
42 SELECT sum(b) AS avg_431_773 FROM aggtest;
43  avg_431_773 
44 -------------
45      431.773
46 (1 row)
47
48 SELECT sum(gpa) AS avg_6_8 FROM ONLY student;
49  avg_6_8 
50 ---------
51      6.8
52 (1 row)
53
54 SELECT max(four) AS max_3 FROM onek;
55  max_3 
56 -------
57      3
58 (1 row)
59
60 SELECT max(a) AS max_100 FROM aggtest;
61  max_100 
62 ---------
63      100
64 (1 row)
65
66 SELECT max(aggtest.b) AS max_324_78 FROM aggtest;
67  max_324_78 
68 ------------
69      324.78
70 (1 row)
71
72 SELECT max(student.gpa) AS max_3_7 FROM student;
73  max_3_7 
74 ---------
75      3.7
76 (1 row)
77
78 SELECT count(four) AS cnt_1000 FROM onek;
79  cnt_1000 
80 ----------
81      1000
82 (1 row)
83
84 SELECT count(DISTINCT four) AS cnt_4 FROM onek;
85  cnt_4 
86 -------
87      4
88 (1 row)
89
90 select ten, count(*), sum(four) from onek
91 group by ten order by ten;
92  ten | count | sum 
93 -----+-------+-----
94    0 |   100 | 100
95    1 |   100 | 200
96    2 |   100 | 100
97    3 |   100 | 200
98    4 |   100 | 100
99    5 |   100 | 200
100    6 |   100 | 100
101    7 |   100 | 200
102    8 |   100 | 100
103    9 |   100 | 200
104 (10 rows)
105
106 select ten, count(four), sum(DISTINCT four) from onek
107 group by ten order by ten;
108  ten | count | sum 
109 -----+-------+-----
110    0 |   100 |   2
111    1 |   100 |   4
112    2 |   100 |   2
113    3 |   100 |   4
114    4 |   100 |   2
115    5 |   100 |   4
116    6 |   100 |   2
117    7 |   100 |   4
118    8 |   100 |   2
119    9 |   100 |   4
120 (10 rows)
121
122 SELECT newavg(four) AS avg_1 FROM onek;
123        avg_1        
124 --------------------
125  1.5000000000000000
126 (1 row)
127
128 SELECT newsum(four) AS sum_1500 FROM onek;
129  sum_1500 
130 ----------
131      1500
132 (1 row)
133
134 SELECT newcnt(four) AS cnt_1000 FROM onek;
135  cnt_1000 
136 ----------
137      1000
138 (1 row)
139