小编Bor*_*ago的帖子

如何找到购买产品A和D> 6个月的客户?

我需要更高级的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)

我需要使用游标并按记录迭代记录,比较日期吗?

如果是这样,光标程序会是什么样的?虽然我已经完成了多年的程序编程,但我还没有使用过游标.

谢谢!

sql t-sql

5
推荐指数
1
解决办法
2189
查看次数

如何找到购买一种产品而不是另一种产品的人?

我有一个表将客户与以前的购买联系起来:

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的人.

我不得不创建一个新帐户来发表评论(我无法使用我昨天创建的帐户登录,密码恢复说​​它找不到我)

sql

3
推荐指数
1
解决办法
2649
查看次数

标签 统计

sql ×2

t-sql ×1