求在同一张字据中同时存在的款号
求在同一张单据中同时存在的款号
各位大侠,一直想写个SQL代码来实现下面的想法
求出销售表中同时被顾客买走的两件货品的top 10,
数据表如下:
销售单号 货号 数量
A001 M001 1
A001 M002 2
A001 M003 1
A002 M001 2
A003 M001 1
A004 M001 2
A004 M002 1
A005 M001 2
A005 M003 1
A005 M004 2
A005 M005 1
A006 M002 1
A006 M003 2
A006 M005 1
A007 M003 2
A007 M005 1
想查到如下类似的结果:
M001&M002: 2 因为这两个货号在A001和A004号单中同时出现过,2张单,故结果为2
M001&M003: 2 因为这两个货号在A001和A003号单中同时出现过,2张单,故结果为2
M002&M003: 2 因为这两个货号在A001和A006号单中同时出现过,2张单,故结果为2
M003&M005: 3 因为这两个货号在A005、A006、A007号单中同时出现过,3张单,故结果为3
不知道哪位大侠有方法解决这个问题?
请赐教!不胜感谢!
------解决思路----------------------
这个没有影响,哪怕是字符串也可以判断大小T1.货号<T2.货号,而这个是优化连接的作用,确保两个货号不会连接两次
各位大侠,一直想写个SQL代码来实现下面的想法
求出销售表中同时被顾客买走的两件货品的top 10,
数据表如下:
销售单号 货号 数量
A001 M001 1
A001 M002 2
A001 M003 1
A002 M001 2
A003 M001 1
A004 M001 2
A004 M002 1
A005 M001 2
A005 M003 1
A005 M004 2
A005 M005 1
A006 M002 1
A006 M003 2
A006 M005 1
A007 M003 2
A007 M005 1
想查到如下类似的结果:
M001&M002: 2 因为这两个货号在A001和A004号单中同时出现过,2张单,故结果为2
M001&M003: 2 因为这两个货号在A001和A003号单中同时出现过,2张单,故结果为2
M002&M003: 2 因为这两个货号在A001和A006号单中同时出现过,2张单,故结果为2
M003&M005: 3 因为这两个货号在A005、A006、A007号单中同时出现过,3张单,故结果为3
不知道哪位大侠有方法解决这个问题?
请赐教!不胜感谢!
------解决思路----------------------
这个没有影响,哪怕是字符串也可以判断大小T1.货号<T2.货号,而这个是优化连接的作用,确保两个货号不会连接两次