在select语句里面要把两张表连接起来,一张表数据量庞大,一张表数据量很小,那把哪个表放在前面?今天去面试的时候做得一道题。

解决方案 »

  1.   

    题目应该说完全啊 是怎么样的连接 INNER JOIN 还是LFET JOIN ??是选全部字段还是部分字段?
      

  2.   

    如果是INNER JOIN  顺序是无所谓的 如果是LEFT JOIN 则应该把数据量大的放后面
      

  3.   

    题目跟你描述的是一样的吗?
    inner join 无所谓
    left join 要看需求了,以哪张表为主,哪张表放前面
      

  4.   

    连接一步执行的是两个表的笛卡尔积,
    接着是on进行筛选
    接着是join类型进行外部行的添加前两部所有join都一样,第三步有差异
    所以如果是inner join,无所谓
    left join 把大表放在后边
    right join把大表放在前面