我需要在SSRS或Access中创建一个交互式工具,用户可以在其中输入促销的定义,然后系统会提供与这些条件相关的销售数据。
用户将选择要报告的促销,系统应使用相关的促销定义来提供结果。
我尝试使用提示选择促销,然后在Access中的子查询中插入提示值,但它不喜欢我的语法。看起来像是:
SELECT R.NumberPresented
FROM dbo_MKT_PromoRecapMetric R
WHERE R.DonationDate =
(Select P.5007Start
FROM [Promo Definitions] P
WHERE P.PromoName = [Forms]![Promo.Select]![Promo]
AND R.LocationCode = '5007')
我已经在这个问题上工作了很长时间,任何帮助都会非常感激......
更新:感谢表连接解决方案。我应该在帖子中提到日期标准已经简化了。实际上,我需要选择促销的开始和结束日期来驱动查询的日期范围。我不认为我可以通过加入来做到这一点。
我想我在sql中寻找相当于Excel的查找。
感谢。
答案 0 :(得分:0)
不要在where语句中使用子查询,而是尝试加入表格。
SELECT R.NumberPresented
FROM dbo_MKT_PromoRecapMetric AS R
INNER JOIN [Promo Definitions] AS P
ON P.[5007Start] = R.DonationDate
WHERE (((P.PromoName)=[forms]![Promo.Select]![Promo])
AND ((R.LocationCode)="5007"));