【发布时间】:2014-02-10 12:38:18
【问题描述】:
我在 Sql server 中使用了两个表 Offered 和 Joined..
我正在提供候选人加入公司。在提供时,我会提到加入日期。它将存储在Offered 表中,而不是Joined 表中。
候选人可以在不同的日期加入。加入日期将存储在Joined 表中。这不应该在Offered 表中更新。
现在我正在创建一个结合Offered and Joined Report.. 的报告。其中我有一个名为Date of Joining.. 的列。在该列中,如果候选人尚未加入,日期将来自Offered 表..如果候选人加入意味着,日期将从Joined table..在表格之间进行选择,我使用了函数..
begin
declare @chk int
declare @JoiningDate datetime
set @chk=0
select @chk=id from MemberJoiningDetails where JobPostingId=@JobPostingId and MemberId=@MemberId
if(@chk != 0)
begin
select @JoiningDate=JoiningDate from MemberJoiningDetails where JobPostingId=@JobPostingId and MemberId=@MemberId
end
else
begin
select @JoiningDate=JoiningDate from MemberHiringDetails where JobPostingId=@JobPostingId and MemberId=@MemberId
end
return @JoiningDate
end
我保存了这个函数并在select语句中调用了这个函数..
现在我的问题是,我想根据加入日期条件创建报告。为此,WHERE 条件是从 C# 传递的。
但我的疑问是,如果候选人还没有加入,where 条件应该从Offered 表中检查。如果候选人加入我,where 条件应该从Joined 表中检查.. 怎么做这..?
【问题讨论】:
标签: sql sql-server join