【发布时间】:2010-11-13 11:00:38
【问题描述】:
我有一个实体-属性-值结构的表。例如,作为实体,我可以有不同的国家。我可以有以下属性:“位于”、“有边界”、“大写”。
然后我想找到所有“位于亚洲”和“与俄罗斯接壤”的国家。直接的方法是使用实体将表与自身连接起来,然后使用 where 连接列。
但是,如果我在实体列中有 20 行俄罗斯在其中,那么在联合表中我将有 20*20=400 行以俄罗斯为实体。每个国家都是如此。所以,联合表会很大。
使用原始表提取所有位于亚洲的国家,然后提取所有与俄罗斯接壤的国家,然后使用这两组国家中的那些元素会不会更有效?
【问题讨论】:
标签: mysql join performance self-join