• Hi Thanks for the reply, here is a script that build and populates the tables

    GO

    SET ANSI_NULLS ON

    GO

    SET QUOTED_IDENTIFIER ON

    GO

    CREATE TABLE [dbo].[Schedule](

    [OrderID] [int] NOT NULL,

    [Start] [datetime] NOT NULL,

    [End] [datetime] NOT NULL

    ) ON [PRIMARY]

    GO

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (1, CAST(0x0000A37600DD6C5B AS DateTime), CAST(0x0000A37600EDE71B AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (2, CAST(0x0000A376010EDDD0 AS DateTime), CAST(0x0000A376011F5890 AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (3, CAST(0x0000A37600FE6D75 AS DateTime), CAST(0x0000A376010EE835 AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (4, CAST(0x0000A376012FDEA8 AS DateTime), CAST(0x0000A37601405968 AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (5, CAST(0x0000A37601615001 AS DateTime), CAST(0x0000A3760171CAC1 AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (6, CAST(0x0000A3760150D61A AS DateTime), CAST(0x0000A376016150DA AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (7, CAST(0x0000A376018246FB AS DateTime), CAST(0x0000A37700073FBB AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (8, CAST(0x0000A3750038B09C AS DateTime), CAST(0x0000A37500492B5C AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (9, CAST(0x0000A376008B1737 AS DateTime), CAST(0x0000A376009B91F7 AS DateTime))

    INSERT [dbo].[Schedule] ([OrderID], [Start], [End]) VALUES (10, CAST(0x0000A37600BC8ACA AS DateTime), CAST(0x0000A37600CD058A AS DateTime))

    SET ANSI_NULLS ON

    GO

    SET QUOTED_IDENTIFIER ON

    GO

    CREATE TABLE [dbo].[Order](

    [ID] [int] NOT NULL

    ) ON [PRIMARY]

    GO

    INSERT [dbo].[Order] ([ID]) VALUES (1)

    INSERT [dbo].[Order] ([ID]) VALUES (2)

    INSERT [dbo].[Order] ([ID]) VALUES (3)

    INSERT [dbo].[Order] ([ID]) VALUES (4)

    INSERT [dbo].[Order] ([ID]) VALUES (5)

    INSERT [dbo].[Order] ([ID]) VALUES (6)

    INSERT [dbo].[Order] ([ID]) VALUES (7)

    INSERT [dbo].[Order] ([ID]) VALUES (8)

    INSERT [dbo].[Order] ([ID]) VALUES (9)

    INSERT [dbo].[Order] ([ID]) VALUES (10)

    ALTER TABLE [dbo].[Schedule] ADD CONSTRAINT [DF_Schedule_Start] DEFAULT (getdate()) FOR [Start]

    GO

    ALTER TABLE [dbo].[Schedule] ADD CONSTRAINT [DF_Schedule_End] DEFAULT (getdate()) FOR [End]

    GO

    Ideally my expected results would look something like:

    OrderID | Start | End | NextOrderID

    Many thanks