SELECT u.name,t.Team
FROM (SELECT name FROM USERS)u
FULL JOIN
(SELECT Team FROM Teams) t ON 1=1这里的 on 1=1 是什么意思?

解决方案 »

  1.   

    这不是好技巧,实际相当于cross joinSELECT u.name,t.Team
    FROM (SELECT name FROM USERS)u
    CROSS JOIN
    (SELECT Team FROM Teams) t 
      

  2.   

    on 1=1 可以理解为永远True
      

  3.   


    --1=1意思是恒成立
    --举个例子name
    ------
    a
    bteam
    ------
    A
    B--结果就是name  team
    ------------
    a     A
    a     B
    b     A
    b     B
      

  4.   

    inner/left/right/full一定要on要么是故弄玄虚,要么就不知道cross join
      

  5.   

    猜作者可能 想  类似 " where 1 = 1 "
    然后就可以 直接 加 条件了 ,如 拼接 " and a > b " ,如果你不加上  " where 1 = 1 " 那你要加 " and  a > b " 时 还需要判断前面 写了 " where " 这个关键字没有