simple =, join,left out join,right outer join, cross join

 a. =
       eg.
       Select A.a B.b from A, B where A.a=B.a and A.c=’herengang’;
     under this condition, it only shows the data that A.a=B.a and A.c=”herengang”.
   Although it there is data which .c is “herengang” ,but if we  can’t find such record which .a value equals to A.a in Table B, then it will be cleared.
 b.  left join
    select A.a, B.a 
    from table  A
             left join table B
            on  A.a =B.a and A.c=”herengang”
       under this condition, all of data which .c is “herengang” will be retrieved, and then if B.a exists, then show the value of B.a .

e.g Table A                                                Table B
      columnA columnB columnC              columnA columnB columnC    
           1            3            a                       1         'ok'     23.3
           2            4            b                       3          'sorry'    3.0

A join B (A inner B) ,result is 
     1       3        a      1     'ok'      23.3
A left join B, result is 
     1       3       a       1    'ok'       23.3
     2       4       b     null   null    null
A cross join B
      1       3       a      1    'ok'      23.3
      1       3       a      3   'sorry'   3.0
      2       4       b      1    'ok'      23.3
      2       4       b      3    'sorry'    3.0
原文地址:https://www.cnblogs.com/Winston/p/1040997.html