On 2011-04-06, Jerry Sievers <gsiever...@comcast.net> wrote: > Carlos Mennens <carlos.menn...@gmail.com> writes: > >> CREATE TABLE users >> ( >> id integer PRIMARY KEY UNIQUE NOT NULL, --ID >> fname character varying(40) NOT NULL, --First name >> lname character varying(40) NOT NULL, --Last name >> email character varying NOT NULL, --email address >> office integer NOT NULL, --Office number >> dob date NOT NULL, --Date of birth >> age integer NOT NULL --Age >> ) >> ; >> >> Is there a way in SQL I can have the users 'age' be auto adjusted >> based on the 'id' & 'dob'? I would assume this is possible because if >> you have 100 employees, I doubt someone has time to sit and change >> everyone's age from 31 > 32 on their birthday. Can someone please help >> explain how this works or what the SQL code would look like assuming >> that it's possible? I have no advanced far enough to see what triggers >> and views are so perhaps it's just my level with SQL in general. > > I'd suggest not storing age but instead wrapping with a view that calls > date_trunc('year', now() - dob).
unfortunately that doesn't work. now() - dob gives you a number of days, and there's no reliable way to convert a number of days into a number of years. someone born 365 days ago today is 1 year old. but in a years time someone then 365 days old would not be because of the leap year. -- ⚂⚃ 100% natural -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general