Je hebt je versie van PostgreSQL niet genoemd, wat erg belangrijk is bij het schrijven van antwoorden op dit soort vragen.
Als u PostgreSQL 9.0 of nieuwer gebruikt (of kunt upgraden), kunt u deze aanpak gebruiken zoals beschreven door Pavel:
http://okbob.blogspot.com /2009/10/dynamic-access-to-record-fields-in.html
Over het algemeen wilt u verwijzen naar een dynamisch benoemd veld in een record-getypte PL/PgSQL-variabele zoals 'NEW' of 'OLD'. Dit is in het verleden vervelend moeilijk geweest en is nog steeds onhandig, maar is in ieder geval mogelijk in 9.0.
Uw andere alternatief - dat misschien eenvoudiger is - is om uw audittriggers in plperlu te schrijven, waar dynamische veldreferenties triviaal zijn.