存储多个数据点的MySQL/PHP

存储多个数据点的MySQL/PHP,php,mysql,Php,Mysql,我对编程和数据库比较陌生 我有一个MySQL数据库和一个“sales”表。此表列出了一个状态下的所有销售(即每个记录都是一个特定的销售),其中包含sellername和buyerzip字段。我希望有另一个表“卖方”,其中包括sellername,还包括通过邮政编码定义卖方市场区域的字段-例如50+邮政编码定义一个市场,卖方可以定义多个市场 这些市场区域将用于将来的查询:显示特定市场区域中的所有销售额 从哪里开始考虑如何存储“市场区域”数据,然后将其用于未来的查询 谢谢我将在这里做出以下假设: 卖

我对编程和数据库比较陌生

我有一个MySQL数据库和一个“sales”表。此表列出了一个状态下的所有销售(即每个记录都是一个特定的销售),其中包含sellername和buyerzip字段。我希望有另一个表“卖方”,其中包括sellername,还包括通过邮政编码定义卖方市场区域的字段-例如50+邮政编码定义一个市场,卖方可以定义多个市场

这些市场区域将用于将来的查询:显示特定市场区域中的所有销售额

从哪里开始考虑如何存储“市场区域”数据,然后将其用于未来的查询


谢谢

我将在这里做出以下假设:

  • 卖家有很多市场
  • 一个市场可以跨越多个Zipcode
  • 一个市场只有一个卖家负责
  • 市场不能重叠
  • 导致以下结构

    销售表 卖方|买方邮编

    市场表 市场|市场_zipcodes _id

    zipcodes表 市场| id | zipcode

    希望对…有所帮助。

    表格结构: 销售表:ID、sellerID、buyerZipcode、金额
  • 卖家表:ID,卖家名称
  • 市场表:ID,marketName
  • SellerMarketLink表:ID、sellerID、marketID
  • MarketZipCode表:ID、marketID、zipCode
  • 示例数据 对问题的第一条评论中的信息进行编码

    市场表 1,“A店,第一市场”
    2,“A店,第二市场”
    3,“B店市场”

    市场ZipCode表 1,1,1
    2,1,2

    7,1,7
    8,1,8
    9,2,4
    10,2,5

    14,2,9
    15,2,10
    16,3,1
    17,3,2
    18、3、3
    19,3,8
    20,3,9
    21,3,10
    22,3,11
    23,3,12

    查询 每个卖家在市场上的总销售额。请注意,由于一个邮政编码可以是多个市场的一部分,“total Sales”中所有值的总和可以大于Sales表中所有“amount”值的总和

    select Market.marketName, Seller.sellerName, sum(Sales.amount) as "Total Sales"
    from Sales join Seller join SellerMarketLink join Market join MarketZipCode
    on (Sales.sellerID = Seller.ID AND Seller.ID = SellerMarketLink.sellerID 
      AND SellerMarketLink.marketID = Market.ID 
      AND Market.ID = MarketZipCode.marketID 
      AND MarketZipCode.zipCode = Sales.buyerZipCode)
    group by Market.ID, Market.marketName, Seller.ID, Seller.sellerName
    order by Market.marketName, Seller.sellerName
    

    1.卖家可以有很多市场。一个市场可以有许多邮政编码3。市场上可能有多个卖家,因此市场可以重叠,这是留给读者的练习。我已经预先给了你我的假设。如果你想让我为你做这项工作,你必须向我支付一张零售商店的图片-商店a可能将其市场定义为邮政编码1,2,3,4,5,6,7,8-并且将单独的市场定义为4,5,6,7,8,9,10。商店B可能将其市场定义为1,2,3,8,9,10,11,12。我有数据显示所有卖家在这些邮政编码中对买家的销售情况,因此我可以显示任何特定卖家在任何定义市场中的市场份额。事实上,市场可以小到一个邮政编码,或者大到几百个邮政编码-用户可以定义自己的市场。谢谢-我想回到这里-这就是我要找的-如何存储多对多关系