[进来就感谢] 求投票,商品规格数据表设计哪种方式最为合适? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hoythan
V2EX    程序员

[进来就感谢] 求投票,商品规格数据表设计哪种方式最为合适?

  •  
  •   hoythan 2017-07-22 01:24:10 +08:00 3423 次点击
    这是一个创建于 3022 天前的主题,其中的信息可能已经有所发展或是发生改变。

    回顾(或查看 append)

    t/376932

    在 v 友帮助下,我整理了一套新的数据表设计方案,拿捏不定到底哪种更强 

    第一种是前一帖的设计方法,就是把 sku 的 key 直接写在规格表的字段中。然后需要在商品表中记录顺序以便前台展示。

    第二种方法有类似分类法一样,设计具有子级关系。商品表中不需要记录顺序。

    具体如下图所示

    两个红色方框为两种规格表设计方案。

    第一种

    第一种是固定 key,如果日后有添加新的 sku_key 则继续往数据表上添加。 层级关系保存在商品表中,使用逗号分割 这种方法好像更加便于查询,每条都是一个完整的属性。 

    第二种

    第二种是具有层级关系,通过查找子 child_id 判断出之间的层级等关系。 这种方法好像适合索引这个 key 字段,然后程序处理层级关系 

    求广大 v 站兄弟姐妹 帮我投个票? 1 or 2 or 更好的 idea

    7 条回复    2017-07-22 13:02:30 +08:00
    coolair
        1
    coolair  
       2017-07-22 07:09:05 +08:00 via Android
    不会用 2。
    airyland
        2
    airyland  
       2017-07-22 08:33:34 +08:00   1
    商品规格表一般不会一个规格一个字段吧,商品不同品类属性列表必然是不一样的,我们是这样 sku_key 表保存每个商品的不同属性和属性值,sku_item 保存商品 sku 组合列表,keys: 001:001;002:003 names: 属性 1:属性 1 的值 1;属性 2:属性 2 的值 3
    zjsxwc
        3
    zjsxwc  
       2017-07-22 09:38:56 +08:00   1
    2 中设计都有问题,sku 对象是所有规格组合的结果代表具体商品,规格(speficiation)对象,应该包含其规格值对象(specification value)

    所以按照领域对象来设计数据库表,至少应该有 3 个表: sku (裤)、speficiation (人群)、specification value (男、女)

    这三个表的关系是

    sku 包含对应具体组合后的 speficiation value id
    specification value 包含对应代表的 speficiation id


    ++

    其实以上还有一个对象 product 没说,因为如果没 product 对象,举例子:
    那么当在 speficiation 颜色有 3 个 specification value ( 红、黑、白)时
    对某个 sku ([{颜色: 红},{人群: 男}])
    添加一个新人群女后
    其实是要新加 3 个 sku (红女、黑女、白女),而不是简单的只加了个 sku(红女)
    zvcs
        4
    zvcs  
       2017-07-22 11:45:49 +08:00 via iPhone   1
    楼主,你可以反过来思考,使用 nosql,hbase,每一种属性对应一张表,key 对应商品号,value,对应属性值,同时有一张总表,key 对应商品号,value 对应含有的属性。查找的时候先查找总表,在查询之表。当然,你可以直接只要一张主表,value 对应一个 json,这样索引麻烦一点。我是菜鸟,希望有人指出不足之处。
    annielong
        5
    annielong  
       2017-07-22 12:46:16 +08:00   1
    主表记录商品信息,扩展表记录商品的属性,属性单独一个属性表
    hoythan
        6
    hoythan  
    OP
       2017-07-22 13:01:56 +08:00
    @annielong ...就是这样呀
    hoythan
        7
    hoythan  
    OP
       2017-07-22 13:02:30 +08:00
    @zjsxwc 你表达的太模糊了,能说明白一点吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4906 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 05:41 PVG 13:41 LAX 22:41 JFK 01:41
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86