On 30 June 2014 12:38, Arup Rakshit <arupraks...@rocketmail.com> wrote:
> I have employee table. Where I have a column joining_date. Now I am > looking for a way to get all employee, who completed 5 years, 10 years > current month. How to do so ? I am not able to figure this out. > > Regards, > Arup Rakshit > Hi, take a look at this example: I've created a sample table: create table users(id serial, joining_date date); and filled it with sample data: insert into users(joining_date) select now() - (j::text || 'days' )::interval from generate_series(1,10000) j; Then the query showing up all users who complete 5 and 10 years this month can look like: with u as ( select id, date_trunc('month', age(now()::date, joining_date)) age from users ) select * from u where u.age in ('5 years', '10 years'); - Szymon