问答详情
源自:6-2 常见问题解析

多表关联的join on用在什么情况下?

数据库sql语句

提问者:MySecurity 2016-09-13 16:12

个回答

  • 北海北极熊
    2016-09-14 10:05:55
    已采纳

    搬运工:

    多表连接查询按要查的结果而定
    第一个,就是普通的连接查询,等同于
    select   C.字段一 ,  count(A.主键)
    from  Table  A
    inner join Table  B  on A.B的主键  =  B.主键
    inner join Table  C  on B.C的主键  =  C.主键
    group   C.字段一


    select   C.字段一 ,  count(A.主键)
    from  Table  A
    join Table  B  on A.B的主键  =  B.主键
    join Table  C  on B.C的主键  =  C.主键
    group   C.字段一

    第二个采用了左连接
    也就是以A为主表,要把条件中A的显示完全,即如果C.字段1对应的A主键为空,那么就显示0,可如果在第一中查询,如果为空,那就不显示了

    正常来说,速度都差不多,因为执行方式基本一致