Tom Lane wrote:
> OK, I'm a bit confused by the obfuscation here.  The table with the
> duplicates is xxx, or qqq?

Possibly less obscure version:

     public | tg_update_anotherTable_date | "trigger"
|                     | mail  | plpgsql  |
    Declare
        uid         bigint;
    Begin
        uid = (select owner_id from anotherNotherTable m where
m.keyField = NEW.fkField);
        if (uid <> 0 and not uid is null) then
            update brokenTable set some_date = 'now' where id=uid;
        end if;
        Return NEW;
    End; |

and there's also a rewrite rule:

 aView_update_r1 AS
    ON UPDATE TO aView DO INSTEAD  UPDATE brokenTable SET f1 = new.f1
  WHERE brokenTable.id = new.id
 aView_update_r2 AS
    ON UPDATE TO aView DO INSTEAD  UPDATE brokenTable SET f2 = new.f2
  WHERE brokenTable.id = new.id




---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to