V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lusin
V2EX  ›  程序员

数据表水平切分后如何实现查询的呢?

  •  
  •   lusin · 2012-08-28 10:27:54 +08:00 · 3568 次点击
    这是一个创建于 4460 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如数据表有 [ID] [用户名] [年龄] 等字段,现在按ID水平切分

    但现在按 [用户名] 查询用户信息的时候如何处理呢?因为通过用户名定位不到哪张表上去
    4 条回复    1970-01-01 08:00:00 +08:00
    ipconfiger
        1
    ipconfiger  
       2012-08-28 10:47:12 +08:00
    比如你用阿米巴就不需要这么麻烦,它会帮你中心组织sql的,不过如果你要取列表,那就有点纠结了
    twm
        2
    twm  
       2012-08-28 10:58:29 +08:00
    如果是这样,那你这样切分就不合适,你可以在另一个地方,存储id:名称的对照,找到id再说。。。
    ElmerZhang
        3
    ElmerZhang  
       2012-08-28 11:11:28 +08:00
    首先,应该按最常用的查询条件来切分
    如果经常按 name 来查的话,可以使用 @twm 的方法再存一个 name_to_id 的对照
    如果按 name 查询不频繁的话,也可以直接每个表中都查一下然后 union
    heaton_nobu
        4
    heaton_nobu  
       2012-08-29 11:22:01 +08:00
    分区视图?
    表分区一般都有分区条件的,你按照id段去分区会自动找到具体的分区
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5465 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:29 · PVG 15:29 · LAX 23:29 · JFK 02:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.