首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求一SQL语句,多谢

2012-01-18 
求一SQL语句,谢谢!表t1索引int数量int单价int物料string产品号string表t2合同号int产品号string产品数量in

求一SQL语句,谢谢!
表t1  
  索引   int
  数量   int
  单价   int
  物料     string
  产品号   string
表t2  
  合同号   int
  产品号   string  
  产品数量   int
表t1   是产品中所用物料的清单,表t2系合同中所包含要出口的产品
说明:一张合同中包含不同的产品,不同的合同可能包含一样的产品。产品中又包含不同的物料,但不同的产品可能会用同一种物料,
同一种物料在不同的产品中会有不同的单价。
求:1,那么我的数据库应该有几个表?表应该怎样设?上面的我想不够全面。
        2,我要找出一张合同中相同物料的平均价格?


[解决办法]
单价是会变的,所以最好再建一张表保存单价
[解决办法]
一张合同中包含不同的产品 的话。那你的第二个表就有问题了,你的每条记录只能存储一种商品,如要包含多个商品就要存多条,表的字段不对应一个实体,问题太了!!需要重新思考,建议,从ER
图开始做
[解决办法]
这个 就是把表中的primary key定义好了就可以了的
第一个表:primary key(产品号,物料,单价)
产品中又包含不同的物料,但不同的产品可能会用同一种物料,
同一种物料在不同的产品中会有不同的单价。就可以从上面的primary key中进行处理

第二个表:primary key(合同号,产品号)
一张合同中包含不同的产品:合同号,产品号 可以定义,而且查询的话可以通过对合同号的查询工作来做到

这个是我自己的理解,当然,应该有更好的一个建表的方式,自我感觉还没有达到BC范式。。。

热点排行