title: calculate duration in years months and days for each row
body: <p>I have a table where i store the date of player got enter in any game with the <code>gameId and UserId</code> . </p>
  
  <p>Now i have to calculate how much time since each user  playing game. </p>
  
  <p><strong>Table schema is as following</strong> </p>
  
  <pre><code>create table  GameUser
  
  (
     UserId int identity(1,1) not null, 
     UserName nvarchar(500)
  
  )
  
  insert into GameUser SELECT 'rahul'
  insert into GameUser SELECT 'yunus'
  insert into GameUser SELECT 'nitin'
  
  
  Create table GameEntry 
   (
      EntryId int identity(1,1) not null,
      GameId int , 
      UserId int , 
      EntryDate smalldatetime
  
   )
  
  
  insert into GameEntry SELECT 1,1,'01/01/2009'
  insert into GameEntry SELECT 1,2,'05/01/2009'
  insert into GameEntry SELECT 1,3,'12/01/2009'
  insert into GameEntry SELECT 2,1,'01/01/2010'
  insert into GameEntry SELECT 2,3,'01/01/2013'
  </code></pre>
  
  <p><a href="http://sqlfiddle.com/#!3/8189b/2" rel="nofollow">SQL FIDDELE  with table scheme and test data </a></p>
  
  <p>my result column for duration should be like this <code>2 years 2 months and 15 days</code>  or <code>3 months</code> or <code>5 months 15 days</code> or <code>9 days</code> </p>
  
  <p>I already check age calculation questions on SO, but there are more complicated . </p>