【发布时间】:2011-09-20 10:33:08
【问题描述】:
我有一个数据表,其中有一个列列表(在此示例中归结为相关的列):
users(
usr_pkey int identity(1, 1) primary key,
usr_name nvarchar(64),
...,
)
accounts(
acc_pkey int identity(1, 1) primary key,
usr_key int foreign_key references users(usr_pkey),
acc_effective datetime,
acc_expires datetime,
acc_active bit,
...,
)
我希望从这张表中获取所有记录:
- 帐户属于指定用户和
- 首先:
- 帐户处于活动状态并且今天的日期介于帐户的生效日期和到期日期之间或
- 在第二种情况下:
- 如果一审未发现任何记录,则以最近到期日的记录为准。
所以 - 如果存在今天的日期介于帐户的生效日期和到期日期之间的活动记录,我想要该记录。仅当未找到匹配项时,我才希望该用户的任何帐户具有最近的到期日期。
【问题讨论】:
标签: tsql sql-server-2008 sql-server-2008-r2