Unfortunately, I don't understand your advice, David - On Tue, Jan 15, 2019 at 5:46 PM David G. Johnston < david.g.johns...@gmail.com> wrote:
> On Tue, Jan 15, 2019 at 9:42 AM Alexander Farber > <alexander.far...@gmail.com> wrote: > > When I am trying > > > > WITH diffs AS ( > > SELECT > > gid, > > uid, > > played - LAG(played) OVER(PARTITION BY gid ORDER BY played) AS diff > > FROM moves > > WHERE uid = 1 > > ) > > UPDATE users SET > > avg_time = TO_CHAR(AVG(diff), 'HH24:MI') > > FROM diffs; > > > > the syntax error is unfortunately printed by PostgreSQL 10: > > > > aggregate functions are not allowed in UPDATE > > So calculate the average somewhere else, put the result in a column, > and then reference that column in the SET clause. > > do you suggest to add a second CTE? Regards Alex