• And why return a VARCHAR(MAX) value?  Are you really going to have a value that needs 2GB?

    Plus, this query seems to work just fine:

    SELECT CAST(DATEDIFF(DAY,0,DATEADD(SECOND,DATEDIFF(SECOND,StartDate, EndDate),0)) AS VARCHAR(30)) + 'd ' + CONVERT(VARCHAR(8),DATEADD(SECOND,DATEDIFF(SECOND,StartDate, EndDate),0),108)
    FROM
      (VALUES ('2017-10-03 00:00:00', '2017-10-12 00:00:00')
             ,('2017-10-05 07:30:00', '2017-10-05 07:55:00')
             ,('2017-09-01 01:46:00', '2017-09-01 10:55:00')
             ,('2017-11-21 08:21:00', '2017-12-06 18:00:00')
      )dt(StartDate,EndDate);

    Not sure what forum thread you are talking about, Luis.