Conditional return of aggregated data
| От | Laura Smith |
|---|---|
| Тема | Conditional return of aggregated data |
| Дата | |
| Msg-id | huts4iYHSGpV-pwvHgoN-X8_PwFIFr-j7wbWueEXrs2Du5bKHLE6lik-8y-s6DBKkhAZr-gGGdbadVf3g9uHTf3CB5qX4SJDfD8ezTKLfM8=@protonmail.ch обсуждение исходный текст |
| Ответы |
Re: Conditional return of aggregated data
Re: Conditional return of aggregated data Re: Conditional return of aggregated data |
| Список | pgsql-general |
Hi,
I have some aggregated statistics which are currently being queried as follows:
create view stats_age as
SELECT a.category,
a.statcount,
b.a_desc
FROM reg_aggregated_stats a,regs_select_age b where a.category='age' and a.datapoint::smallint=b.a_val order by
a.datapointasc;
However, as these relate to event registrations, a suggestion has been made that the database really should be
returningnothing until a certain number of registrations has been met (in order to avoid privacy infringing inferrence
fromwhat should be an otherwise fully irreversibly aggregated dataset).
Now, the queries are wrapped in PL/PGSQL functions anyway, so I could make a second call to Postgres to find out
sum(statcount)and then conditionally return based on that.
But is there a smarter way to do this out of a single SQL query ?
My initial idea was something along the lines of :
select (select sum(statcount) from stats_residence) as aggstat,statcount,short_name_en from stats_residence where
aggstat>some_number;
But as I soon discovered that's not valid syntax! Hence ideas welcome from those smarter than me.
Thanks !
Laura
В списке pgsql-general по дате отправления: