数据库中的类表结构

时间:2014-12-01 09:22:19

标签: php mysql

我有一个允许用户发布广告的页面。

  1. 我将需要一个页面,我需要获取所有类别。
  2. 将会有一个页面,我可以获取每个类别。
  3. 令我困惑的是:如果有大量(约20k +以上)的数据哪一个更好。

    - 将数据插入每个类别和主表?

    *我需要“post_ads_main”的原因。 我想在获取数据时可以使用联接,但是当用户发布广告时,我无法订购'ProductId'。

    TABLE : post_ads_main
    ProductID     |Category   |AdsDate
    1             |Tools      |14545454
    2             |cars       |14454545
    
    TABLE : post_ads_tools
    ProductID     |Category   |AdsDate
    1             |Tools      |14545454
    
    TABLE : post_ads_cars
    ProductID     |Category   |AdsDate
    2             |cars       |14454545
    

    - 一个有索引的表就足够了吗?

    TABLE : post_ads_main
    ProductID     |Category(catergory_index)   |AdsDate
    1             |Tools                       |14545454
    2             |cars                        |14454545
    
    *where catergory have index.
    

    更好的方法真的很感激。

1 个答案:

答案 0 :(得分:0)

在表格中使用您的所有数据。对于MySQL服务器来说,20K +并不多。如果你有合适的indixes,那么所有行都可以达到数百万行。

如果将数据拆分为多个表,则很难在多个类别上生成报告和其他聚合。并且您可能会在将来获得冗余数据导致数据损坏或不连贯。