【发布时间】:2014-08-04 14:27:38
【问题描述】:
基本上我有 2 张桌子。 1 个表有两个(重要)列的列表。一般的想法是,第 2 列中的项目不能与第 1 列中的项目组合出售。它本质上是一组确定正确计费组合的规则。该表与此类似:
col 1 ; col 2
----- -----
a ---- b
a ---- h
a ---- d
b ---- f
b ---- z
c ---- z
c ---- d
c ---- b
第 1 列中的商品不能与第 2 列中的商品一起出售。
第二个表本质上是一个“订单”表。每笔交易都有交易编号和行号。在每个交易行上都有已售出的项目。每笔交易通常会出售 许多 件商品。该表的设置与此类似:
trans # ; trans line ; item
------- ----------- -----
12345 ---- 1 ---- a
12345 ---- 2 ---- b
12345 ---- 3 ---- a
45678 ---- 1 ---- z
45678 ---- 2 ---- f
我要做的是获取所有交易数据,并将其与不适当项目组合列表中的数据进行核对。如您所见,交易 12345 违反了第一条规则,因为 'a' 与 'b' 一起出售。这是总体思路。
【问题讨论】:
-
在第一个表中是否会有一行表示“a 不能与 b 一起出售”,另一行表示“b 不能与 a 一起出售”?
标签: mysql sql sql-server sql-server-2008 tsql