2011/1/3 Alexander Farber <alexander.farber@xxxxxxxxx>: > Hello, > > through some obscure error (probably on my side) > I have several thousand entries for Jan 1 and Jan 2 > ending up in the ISO week 2011-52 instead of 2010-52 > which breaks the bar chart at the top of my script > http://preferans.de/user.php?id=OK504891003571 > > # select * from pref_money where id='OK324712148886'; >    id    | money |  yw > ----------------+-------+--------- > ÂOK324712148886 |  203 | 2010-46 > ÂOK324712148886 |  219 | 2010-49 > ÂOK324712148886 |  115 | 2010-51 > ÂOK324712148886 |  Â63 | 2010-52 > ÂOK324712148886 |  Â20 | 2011-01 > ÂOK324712148886 |  Â10 | 2011-52 > > # \d pref_money >            ÂTable "public.pref_money" > ÂColumn |     Type     Â|        ÂModifiers > --------+-----------------------+----------------------------------------- > Âid   | character varying(32) | > Âmoney Â| integer        | not null > Âyw   | character(7)     Â| default to_char(now(), 'YYYY-IW'::text) > Indexes: >  Â"pref_money_yw_index" btree (yw) > Foreign-key constraints: >  Â"pref_money_id_fkey" FOREIGN KEY (id) REFERENCES pref_users(id) > > I would like to fix that problem by adding > 2011-52 values of money (10 above) to the > 2010-52 values of money (63 above, should become 73) > and then dropping all rows with the > wrong week number yw='2011-52'. > > So I'm trying: > > # update pref_money set money=money+ >  Â(select money from pref_money where yw='2011-52') >  Âwhere yw='2010-52'; > ERROR: Âmore than one row returned by a subquery used as an expression > > ok, I probably need to specify the id for the subquery > in round brackets above - so I try again: > > # update pref_money as m1 set money=money+ > (select coalesce(money,0) from pref_money as m2 > where m1.id=m2.id and m2.yw='2011-52') > where m1.yw='2010-52'; > ERROR: Ânull value in column "money" violates not-null constraint update tab set money = money + COALESCE((SELECT ...) , 0) .. Regards Pavel Stehule > > Can anybody please help me here? > > Thank you > Alex > > -- > Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general > -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general