我需要更高级的SQL专家的建议.
我被要求创建一份报告,显示购买产品105的客户以及在6个月后购买产品312的客户.
例如,我有以下Orders表:
RecID CustID ProdID InvoiceDate
1 20 105 01-01-2009
2 20 312 01-04-2009
3 20 300 04-20-2009
4 31 105 07-10-2005
5 45 105 10-03-2007
6 45 300 11-10-2007
7 45 312 08-25-2008
Run Code Online (Sandbox Code Playgroud)
我需要一份报告来查看此表并返回:
CustID ElapsedDays
45 327
Run Code Online (Sandbox Code Playgroud)
我需要使用游标并按记录迭代记录,比较日期吗?
如果是这样,光标程序会是什么样的?虽然我已经完成了多年的程序编程,但我还没有使用过游标.
谢谢!
我有一个表将客户与以前的购买联系起来:
RecID CustID ProdID
1 20 105
2 20 300
3 31 105
4 45 105
5 45 300
6 45 312
Run Code Online (Sandbox Code Playgroud)
我想获得购买第105项的CustID列表,但不是第300项.
在这种情况下,CustID 31.
我似乎无法用选择和连接来做到这一点.我很难过!
我肯定会感谢有经验的SQL人员提供的一些帮助.
谢谢!
谢谢!
我是这个问题的原作者.
Mark Byers使用NOT IN的第二个例子很棒!(在这个为我工作之后,我没有尝试别人).
他的第一个LEFT JOIN示例没有返回任何CustID ...我认为我正确地复制了它并使用了正确的表名和列名.所以我不知道为什么它对我不起作用.
再次感谢所有那些善于花时间为我写出一些SQL的人.
我不得不创建一个新帐户来发表评论(我无法使用我昨天创建的帐户登录,密码恢复说它找不到我)