几天前,我在 SO 上提出了一个关于递归查询帮助的问题。
该问题的问题是“如何获取人员约会的历史记录”。
现在我遇到了一个类似的问题,但它应该回答一个稍微不同的问题:
How to get an Appointment history?
例如,如果 ID = 5 的约会被推迟一次,并且是另一个约会的推迟,我如何得到以下结果?
AppointmentID PrevAppointmentID
----------------- ----------------------
1 NULL
5 1
12 5
感谢您的帮助
更新:
这些脚本将有助于为您的试验创建表
CREATE TABLE [dbo].[Appointments](
[AppointmentID] [int] IDENTITY(1,1) NOT NULL,
[IssueID] [int] NOT NULL,
[Location] [varchar](255) NOT NULL,
[Description] [varchar](255) NOT NULL,
[AppointmentDate] [datetime] NOT NULL,
[AppointmentHour] [datetime] NOT NULL,
[Done] [bit] NOT NULL,
[PrevAppointmentID] [int] NULL,
CONSTRAINT [PK_Appointments] PRIMARY KEY CLUSTERED
(
[AppointmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]