第一个表结构如下:
表名: TableA
字段名称: 外企名称(pk), 所属行业 第二个表结构如下:
表名: TableB
字段名称: 国内企业名称(pk), 所属行业第三个表结构如下:
表名: TableC
字段名称: 外企名称(Pk),所属行业,时段一洽谈企业(索引无重复),时段二洽谈企业(索引无重复)......时段十洽谈企业(索引无重复)表一中有外商企业200家,表二中有国内企业800家
要求:为每一家外商企业安排十家不同的国内企业与之洽谈。企业类型必须一致,如果不一致则随机选取一家国内企业与之恰谈,每一家国内企业至少与外商洽谈两次,同一时间段不能同时洽谈两家外商。怎么样才能在表三中实现这个要求阿(表三中任意一个位置字段数据在表中都是唯一的) 谢谢大家帮忙解决一下吧,不一定给我代码,给我点思路也行。再次谢谢大家!
表名: TableA
字段名称: 外企名称(pk), 所属行业 第二个表结构如下:
表名: TableB
字段名称: 国内企业名称(pk), 所属行业第三个表结构如下:
表名: TableC
字段名称: 外企名称(Pk),所属行业,时段一洽谈企业(索引无重复),时段二洽谈企业(索引无重复)......时段十洽谈企业(索引无重复)表一中有外商企业200家,表二中有国内企业800家
要求:为每一家外商企业安排十家不同的国内企业与之洽谈。企业类型必须一致,如果不一致则随机选取一家国内企业与之恰谈,每一家国内企业至少与外商洽谈两次,同一时间段不能同时洽谈两家外商。怎么样才能在表三中实现这个要求阿(表三中任意一个位置字段数据在表中都是唯一的) 谢谢大家帮忙解决一下吧,不一定给我代码,给我点思路也行。再次谢谢大家!
解决方案 »
- 跟潮流,再散200祝大家新年愉快!06年都有大丰收!
- 不用uses语句,单元之间实现变量通讯?
- pos管理信息系统
- 既有分得,又有好处,赶快进来啊!
- 在安装sql 客户端的电脑中可以使用我的程序进行联接远程联接,但没有安装的就不行,请问 怎么回事?谢谢
- 如何依次给控件赋值.
- delphi编译出错提示typr of expression must be boolean 求助~~
- 新手求助!关于内存地址违例的问题!请各位高手帮帮忙!
- 小弟只剩下最后50分了,想求一个注册版的fastreport地址。
- 关于创建不规则窗口的问题,请一定帮忙。谢谢!我只有100分了~~~~~~~~~~~~~~!
- 打印报表的时候,dbtext的值不能转换的问题。
- 熟悉cxGrid的进来
)),其中外企名称与时段标识位组合主键(假设同一家外商同一时段只能与一家国内企业洽谈,如果
不是这种情况,则三个字段联合作主键)。用你原来的结构,明显是从报表出发的,
实际上在大多数情况下,根本不能输入数据。为了保证约束条件起作用,可以在该表上建立
触发器来实现。
TableC ought to create the simple relation bwtween TableA and TableB, not report
谢谢你的回复,如果按照你说的那种方式设计同一家国内企业很有可能在同一时段洽谈两家外国企业,这也是不允许的这又该怎么解决呢? 麻烦再帮忙看看好么 十分感谢
select 外企名称, 所属行业, 时段一洽谈企业, 时段二洽谈企业, ... 时段十洽谈企业
from
(select a.外企名称 as 外企名称,
a.所属行业 as 所属行业,
b1内企业名称 as 时段一洽谈企业,
b2国内企业名称 as 时段二洽谈企业,
...
b10.国内企业名称 as 时段十洽谈企业
from TableA a,
TableB b1,
TableB b2,
TableB b3,
TableB b4,
TableB b5,
TableB b6,
TableB b7,
TableB b8,
TableB b9,
TableB b10
where a.所属行业 = b1.所属行业
and a.所属行业 = b2.所属行业
and a.所属行业 = b3.所属行业
and a.所属行业 = b4.所属行业
and a.所属行业 = b5.所属行业
and a.所属行业 = b6.所属行业
and a.所属行业 = b7.所属行业
and a.所属行业 = b8.所属行业
and a.所属行业 = b9.所属行业
and a.所属行业 = b10.所属行业
and (not b1.国内企业名称 in (b2.国内企业名称, b3.国内企业名称, b4.国内企业名称 ... so on))
and (not b2.国内企业名称 in (b3.国内企业名称, b4.国内企业名称, b5.国内企业名称 ... so on))
... so on
and (not b9.国内企业名称 in (b10.国内企业名称))
)
group by 外企名称, 所属行业, 时段一洽谈企业, 时段二洽谈企业, ... 时段十洽谈企业
having count(时段一洽谈企业) < 3
and count(时段二洽谈企业) < 3
...
and count(时段十洽谈企业) < 3
你好,刚才我试了一下那段代码没有错误但是提示超时已过期。我用来做测试的数据量并不大,这是为什么呢?