5分钟快3首页    注册   登录
5分钟快3 = way to explore
5分钟快3 是一个5分钟快3关于 分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
5分钟快3推荐 管理5分钟快3工具
Sequel Pro
phpMyAdmin
5分钟快3推荐 书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
v2hh
5分钟快3  ›  MySQL

有偿求教数据库结构设计

  •  
  •   v2hh · 9 天前 · 1967 次点击

    http://oss.dbbaxbb.cn/WechatIMG116.jpeg 如图,每个单元格的价格是可以编辑的,时间和场地都不是固定的,用户选择对应的单元格下单之后改变颜色。 最终合理的建议会发 66 红包,资金有限。

    20 条回复    2020-04-01 09:30:52 +08:00
    little5分钟快3Win
g
        1
    little5分钟快3Win g   9 天前 via iPhone
    别设计表了,直接上 mongo
    v2hh
        2
    v2hh   9 天前
    @little5分钟快3Win g mongo 并不能解决问题
    kinotrip
        3
    kinotrip   9 天前
    不需要什么特别的数据结构吧?每天的每个时间点存到一个表,每天的每个可用场地存到另一个表,然后这两个多对多一乘是第三个表,定时自动生成以后几天这三张表的数据就行了。然后数据查询的时候按天返回三张表的内容,让前端自己按数据索引拼界面就行了。
    Aoang
        4
    Aoang   9 天前 via Android
    表一:id 、时间、场地、价格(外键 表二)、状态
    表二:id 、价格(金额)

    就一个图,什么需求都没有,怎么设计。

    场地可以分出去建表,状态也可以分出去建表。
    如果业务量不大,可以不管这些。

    考虑到查询问题,时间可以分成两个字段,一个记录日期,一个记录时分秒。

    查询的时候,直接查日期。
    v2hh
        5
    v2hh   9 天前
    补充一下:时间对应的是一个营业时间,每个商家的营业时间可能不同,场地也是商家自己添加的
    v2hh
        6
    v2hh   9 天前
    @kinotrip 时间可能会变,还有场地。
    SuperAllen
        7
    SuperAllen   9 天前 via Android
    既然①时间段和②场地都不是固定的,把这两块分别单独拆出来建两个表,③价格设定这块和场地,日期,时间段放一起,另外订单作两个表④订单和⑤订单详情,如果订单数据量大,再在这个基础上作拆分。关联部分做好索引设置。
    一点拙见,也欢迎有更好的方案一起探讨
    tiluo
        8
    tiluo   9 天前
    这个帖子5分钟快3关于 时间段的思路还不错
    http://segmentfault.com/q/1010000016159952

    以下内容为复制粘贴:
    一个店铺的营业时间段一般不会超过三个,所以可以有三个字段来存时间段

    店铺 table
    id, name, duration_id1, duration_id2 (可空), duration_id3 (可空)
    然后时间段的表设计:

    时间段 table
    id, start_time, end_time
    店铺表的 duration_id 是时间段表的外键。
    时间段表相当于是 reference data,而店铺表的数据是会更改的。
    Immortal
        9
    Immortal   9 天前
    这个普通逻辑就好了吧:
    场地表:id 商家 id 场地名称,营业时间...额外5分钟快3你 需要的字段。
    - 5分钟快3关于 营业时间,5分钟快3你 这边应该是按小时为单位切分成 15 个对吧,提供一个思路,这个字段用标记位。一周 7 天每天 15 个时段,其实就是 105 位+5 位分隔符,比如周一 7-8 点不营业其他全营业,分隔符为“|”,表里就是:011111111111111|111...
    在页面展现的时候优先判断是否营业,再展现具体数据(价格等),这样营业时间就不会和下面的场地拓展表有关联了,是个商家属性。

    场地拓展表:id 场地 id 价格 当前时段的场地具体类型 时段序号。
    - 这里的时段5分钟快3我 看图片上就是 15 个时段,可以不用时间表示,直接用序号也可以 1-15
    Immortal
        10
    Immortal   9 天前
    @Immortal
    着急了。应该把营业时间提到另一个商家表,不应该在场地表。
    当然,如果每个场地有自己的营业时间,商家还有商家的营业时间,也可以根据这个思路拓展,进行位运算(&)来判断当前时段当前场地是否营业。
    thinkmore
        11
    thinkmore   8 天前
    ```json
    {
    _id: 1,
    # 某一天,比如 3.27
    date: 157xxxxxxxxx,

    info: [
    {
    time: 7:00,
    detail: [
    {
    price: 183,
    address: A2 半场,
    type: 可预订
    },
    {
    price: 183,
    address: B1 半场,
    type: 转让场地
    }
    ]
    },

    {
    time: 8:00,
    detail: [
    {
    price: 183,
    address: A2 半场,
    type: 可预订
    }
    ]
    }

    ]

    }


    ```

    这个是 mongodb 的数据结构,可以参考下。

    商家可以自定义场地,时间等
    v2hh
        12
    v2hh   8 天前
    感谢各位回复,现在有个问题就是初始数据的问题,不可能商家每个单元格都分别设置,5分钟快3我 想的是查询的时候直接返回时间段,场地,价格这些,前端自己匹配单元格价格,只有商家单独设定某个单元格的价格才会被记录入库,不然预先生成数据之后商家如果改价格会很难处理
    fancy111
        13
    fancy111   8 天前
    这有什么特别的吗? 随便设计一个都能用。 一个表就搞定了
    thinkmore
        14
    thinkmore   8 天前
    @v2hh 预生成数据即可,把能填充的全部填充。比如5分钟快3我 上面给出的数据结构
    summerwar
        15
    summerwar   8 天前
    参考日历
    v2hh
        16
    v2hh   8 天前
    @thinkmore 如果与生成的话,之后商家改变价格,所有生成的数据都要改,还有需要生成一周的数据会有点多吧
    xuanbg
        17
    xuanbg   8 天前
    这个不是价格日历嘛……每天每个时间段一条数据,场地、价格以 k/v 形式存成 Json 就行。

    红包就免了,能帮到5分钟快3你 就好
    thinkmore
        18
    thinkmore   8 天前
    @v2hh 一天的数据对应数据库是一条记录。 一周也才七条记录,多?

    每个商家都有对应的记录,如果要修改只用修改对应商家的即可。

    初始化的时候可以用模板为商家填充就行了。当需要修改的时候从将模板数据复制一份保存成商家的即可
    v2hh
        19
    v2hh   8 天前
    @thinkmore 只存一条记录涉及到 单元格数据变更会和麻烦的吧
    thinkmore
        20
    thinkmore   2 天前
    @v2hh 不麻烦,在 mongodb 中更新数组很简单
    5分钟快3关于   ·   FAQ   ·   API   ·   5分钟快35分钟快3我 们 的愿景   ·   广告投放   ·   感谢   ·   实用小5分钟快3工具   ·   946 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 20:43 · PVG 04:43 · LAX 13:43 · JFK 16:43
    ♥ Do have faith in what you're doing.