注册 登录
编程论坛 SQL Server论坛

多对多关系的表怎么设计

taoxinhui 发布于 2007-11-18 18:50, 3030 次点击
我现已知一个商品表,代理人表.一个商品对应多个代理人,每个代理人的价格又不一样.每个代理人又代理多个商品.请问这个问题怎么解决
6 回复
#2
逍遥帅哥2007-11-23 10:34
建立三张表,一张商品表,一张代理人表,然后再建一张用商品表的ID和代理人ID都有的表,通过第三张将商品表和代理人表联系起来,
#3
bygg2007-11-23 11:33
看一下数据库的关联吧
#4
缘吇弹2007-11-23 12:40
create database 商代数据库
go
use 商代数据库
go
create table 商品表(商品ID int primary key,商品 char(10))
go
create table 代理人表(代理人 char(8),价格 int,商品ID int)
go
insert into 商品表
values(1,'手机')
insert into 商品表
values(2,'电视')
insert into 商品表
values(3,'冰箱')
go
insert into 代理人表
values('缘吇弹',1000,1)
insert into 代理人表
values('缘吇弹',1000,2)
insert into 代理人表
values('缘吇弹',1500,3)
insert into 代理人表
values('taoxinhui',1800,1)
insert into 代理人表
values('taoxinhui',1300,2)
go
select 商品,价格,代理人 from 商品表 left join 代理人表 on 商品表.商品ID=代理人表.商品ID
go
/*
查询结果:
商品   价格  代理人
------      -------   ---------
手机   1000   缘吇弹
手机   1800   taoxinhui
电视   1000   缘吇弹
电视   1300   taoxinhui
冰箱   1500   缘吇弹
*/
#5
purana2007-11-23 14:27
真多原子弹..
#6
XieLi2007-11-23 14:59
同感!同感!
#7
缘吇弹2007-11-23 16:50
to LS and to LS's LS:
晕```:$
1