A表(记录数为1000左右)
AID
BNameB表(记录数为几千万)
AID字段与A表关联.数据查询B表时要求关联显示A表的AName字段.请问:这样的表结构设计比在B表直接使用AName字段的方式,哪个的性能好一些,
性能差别大吗?各位大侠在实际的应用中都是怎么做的?

解决方案 »

  1.   

    谢谢各位的回答.因为B表中与其它表关联的ID字段很多,
    所以我主要担心的是性能问题.
    只要对性能影响不大,我仍会选择在B表中使用A表的ID希望各位能说一下你们在实际应用中的做法.
      

  2.   

    有差别的,后面那种方法比较直观。
    关联起来查找的结果可能是A和B表的结合,但是只查B表的话不用条件关联肯定快多了。
      

  3.   

    这种情况可以使用cluster,将两个表的id字段只存一份,对于经常关联查询来说,会很大程度上提高效率。cluster的使用,参考下面的文章
    http://blog.csdn.net/dlinger/archive/2004/07/09/37778.aspx
      

  4.   

    毫无疑问的,应该在B表中增加ANAME字段来处理。
    就是说数据库设计必须要包含一定的冗余字段来提高速度。
    数据库设计并不能完全按照第三范式来设计。