Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 731065
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T06:59:01+00:00 2026-05-14T06:59:01+00:00

I have a sql server table: CREATE TABLE [Workflow].[MilestoneDate]( [MilestoneDateId] [int] IDENTITY(1,1) NOT NULL,

  • 0

I have a sql server table:

CREATE TABLE [Workflow].[MilestoneDate](
 [MilestoneDateId] [int] IDENTITY(1,1) NOT NULL,
 [SpecifiedDate] [datetime] NULL,
 [RelativeDays] [int] NULL,
 [RelativeMilestoneDateId] [int] NULL,
 CONSTRAINT [PK_MilestoneDate] PRIMARY KEY CLUSTERED 
(
 [MilestoneDateId] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
ALTER TABLE [Workflow].[MilestoneDate]  WITH CHECK ADD  CONSTRAINT [FK_MilestoneDate_MilestoneDate] FOREIGN KEY([RelativeMilestoneDateId])
REFERENCES [Workflow].[MilestoneDate] ([MilestoneDateId])
GO
ALTER TABLE [Workflow].[MilestoneDate] CHECK CONSTRAINT [FK_MilestoneDate_MilestoneDate]

and it has data that might look like:

Id     Date                          RelDays RelId
49     2010-03-04 00:00:00.000       NULL    NULL
746    NULL                          6       46
747    NULL                          20      746
46     2010-02-18 00:00:00.000       NULL    NULL
48     2010-04-04 00:00:00.000       NULL    NULL
47     2010-05-04 00:00:00.000       NULL    NULL
748    NULL                          14      48

What I need to be able to do is to get the calculated date for each row which is either the Date if there is one, or the Date of the “parent” item (using the RelId) plus the RelDays (which can be recursive).

So for example the calculated date for Id 747 is 20 days + 6 days + 2010-02-18 and therefore 2010-03-16.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T06:59:01+00:00Added an answer on May 14, 2026 at 6:59 am

    try this (uses a CTE which is only available on SQL Server 2005 and up):

    DECLARE @YourTable table (Id int, Date datetime, RelDays int, RelId int)
    INSERT @YourTable VALUES (49 ,'2010-03-04 00:00:00.000',NULL ,NULL)
    INSERT @YourTable VALUES (746, NULL                    ,6    ,46)
    INSERT @YourTable VALUES (747, NULL                    ,20   ,746)
    INSERT @YourTable VALUES (46 ,'2010-02-18 00:00:00.000',NULL ,NULL)
    INSERT @YourTable VALUES (48 ,'2010-04-04 00:00:00.000',NULL ,NULL)
    INSERT @YourTable VALUES (47 ,'2010-05-04 00:00:00.000',NULL ,NULL)
    INSERT @YourTable VALUES (748, NULL                    ,14   ,48)
    
    ;WITH R AS
    (
        SELECT id,Date,RelDays,RelId  --get all parents
        FROM @YourTable
        WHERE RelId IS NULL
        UNION ALL    --recursive go through all children, adding the days on
        SELECT
            y.id,r.Date+y.RelDays,y.RelDays,y.RelId
            FROM @YourTable y
                INNER JOIN R ON y.RelId=r.Id
    )
    select * from R
    

    OUTPUT:

    id          Date                    RelDays     RelId
    ----------- ----------------------- ----------- -----------
    49          2010-03-04 00:00:00.000 NULL        NULL
    46          2010-02-18 00:00:00.000 NULL        NULL
    48          2010-04-04 00:00:00.000 NULL        NULL
    47          2010-05-04 00:00:00.000 NULL        NULL
    748         2010-04-18 00:00:00.000 14          48
    746         2010-02-24 00:00:00.000 6           46
    747         2010-03-16 00:00:00.000 20          746
    
    (7 row(s) affected)
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a SQL Server 2005 table like this: create table Taxonomy( CategoryId integer
I have the following table and data in SQL Server 2005: create table LogEntries
I have a table in an MS SQL Server db. I want to create
I have a nullable DateTime column in my SQL Server 2005 table called DateTimeDeleted.
I have created a foreign key (in SQL Server) by: alter table company add
We have a SQL Server table containing Company Name, Address, and Contact name (among
I have an SQL Server DB with a table with these fields: A bit
I have a table in SQL server that has the normal tree structure of
I have to write a component that re-creates SQL Server tables (structure and data)
I have designed database tables (normalised, on an MS SQL server) and created a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.