
1 Chihaya0824 PRO |
2 a342191555 2020-05-26 07:21:08 +08:00 via iPhone |
3 chinvo 2020-05-26 07:26:15 +08:00 via iPhone 根据 id 特征分表可以减少查询时的损耗 |
4 wushigejiajia01 2020-05-26 07:58:29 +08:00 via Android 不知道分片规则是没法准确有效查的吧? 用 union 肯定不是最优解 |
5 wushigejiajia01 2020-05-26 08:03:14 +08:00 via Android 1. 5%2=1 2. select tableB |
6 YUyu101 2020-05-26 08:06:58 +08:00 via Android 随机分散可还行,那只能 union 吧,这样分表也不能减少压力啊,除非你查出来后保存 id 是那张表,以后不要再查两遍了。 |
7 shakoon 2020-05-26 08:36:30 +08:00 已经确认全局唯一了那用 union all 。union 会做去重,效率远低于 union all |
8 nikoo OP 并不知道随机分布规则,所以无法用例如 5%2=1 之类提前获知 id 处于哪张表 @a342191555 谢谢,这样写需要将匹配的 id 值写两遍,感觉似乎不太优雅? 如果不能提算出 id 处于哪张表,是否用 union /union all 是唯一的方案了? |
9 daozhihun 2020-05-26 12:32:50 +08:00 话说,为什么会有随机分配在两张表这种设计。。 |
10 msg7086 2020-05-26 12:34:02 +08:00 不能预测处于哪张表,那必定要同时查两张表拿数据,那不就是 union 么。 查两张表,你觉得值写两遍不雅,可以先放在变量里啊。 |