我有这个查询,过去两年每个星期吐出一家公司欠我们的钱。我必须根据他们的起始年份和周来缩小结果,这是两个单独的列。这是我目前的查询。如何更改此值以便仅显示年份大于或等于开始年份且周数大于或等于开始周而不会丢失数据的数据?因此,例如,如果我有一个公司023,其开始日期是2012年第5周,我会说年>> = 2012年和周> = 5,但是它将排除2013年和2014年的所有周,其中周数较少我不确定如何在逻辑上解决这个问题。
SELECT MW.MW_Weeks.Year,
MW.MW_Weeks.Week,
MW.MW_CompanyCodes.cmp_code,
MW.MW_CompanyCodes.stWeek,
MW.MW_CompanyCodes.stYear
FROM MW.MW_Weeks CROSS JOIN
MW.MW_CompanyCodes
WHERE (MW.MW_Weeks.WEDate <= GETDATE())
AND (MW.MW_Weeks.Year > YEAR(GETDATE()) - 2);
答案 0 :(得分:1)
使用以下内容:
year >= 2012 and not (year = 2012 and week < 5)
这将获得年份大于或等于2012年且2012年不在第五周之前的所有数据。