新手记录
1、尽量使用表连接,不要套循环
2、left join/right join/inner join/full join(left join union right join mysql)/cross join/union all(不去重)
left join 左边的就是主表,right join 右边的就是主表
表A:旅游目的地表
旅游地ID | 名称 | 路程 |
001 | 西藏 | 2000KM |
002 | 哈尔滨 | 2000KM |
003 | 贵州 | 1500KM |
004 | 威海 | 1000KM |
表B:旅游意愿表
人员ID | 姓名 | 旅游地ID |
12110701 | 花花 | 004 |
12110702 | 草草 | 002 |
12110703 | 云云 | 004 |
12110704 | 天天 | 001 |
12110705 | 穗穗 | NULL |
表A左连接表B:
旅游地ID | 名称 | 路程 | 人员ID | 姓名 |
001 | 西藏 | 2000KM | 12110704 | 天天 |
002 | 哈尔滨 | 2000KM | 12110702 | 草草 |
003 | 贵州 | 1500KM | NULL | NULL |
004 | 威海 | 1000KM | 12110701 | 花花 |
004 | 威海 | 1000KM | 12110703 | 云云 |
表A右连接表B:
人员ID | 姓名 | 旅游地ID | 名称 | 路程 |
12110701 | 花花 | 004 | 威海 | 1000KM |
12110702 | 草草 | 002 | 哈尔滨 | 2000KM |
12110703 | 云云 | 004 | 威海 | 1000KM |
12110704 | 天天 | 001 | 西藏 | 2000KM |
12110705 | 穗穗 | NULL | NULL | NULL |
内连接:
人员ID | 姓名 | 旅游地ID | 名称 | 路程 |
12110701 | 花花 | 004 | 威海 | 1000KM |
12110702 | 草草 | 002 | 哈尔滨 | 2000KM |
12110703 | 云云 | 004 | 威海 | 1000KM |
12110704 | 天天 | 001 | 西藏 | 2000KM |
外连接:
人员ID | 姓名 | 旅游地ID | 名称 | 路程 |
12110701 | 花花 | 004 | 威海 | 1000KM |
12110702 | 草草 | 002 | 哈尔滨 | 2000KM |
12110703 | 云云 | 004 | 威海 | 1000KM |
12110704 | 天天 | 001 | 西藏 | 2000KM |
12110705 | 穗穗 | NULL | NULL | NULL |
NULL | NULL | 003 | 贵州 | 1500KM |
交叉连接(笛卡尔积):