0

我加入了两个表(我们称它们为 Hours 和 Target),如果在围绕日期的时间段内存在关联的目标,则希望从第二个表中提取目标。(目标可能是这样的:用户:Joe,目标:70,从:2012 年 1 月 1 日,到:2012 年 5 月 31 日“

到目前为止,这很容易:

我根据“用户”加入了“所有”小时与目标,我输出目标并使用“从”和“到”过滤器:“<=Hours.Date”和“>=Hours.Date”,分别。

问题在于,并非所有用户都可能在任何时间范围内都有目标。在这种情况下,我希望返回 0 的目标。但是,根据条件,根本不返回不符合我上述条件的行。

如何设置返回如下内容的条件:

Target.Target where (Target.From <= Hours.Date and Target.To >= Hours.Date) 或在所有其他情况下为 0

谢谢你!

马可

4

1 回答 1

1

你在追求这样的事情吗? http://sqlfiddle.com/#!3/18b5c/1/0

理想情况下,您将拥有一个用户表和存储 ID,但我对您所要求的内容的理解应该涵盖您尝试做的事情。

于 2012-09-21T00:49:52.240 回答