三、连接查询
左连接
总结: 以左表为准,去右边表找匹配数据,找不到的用null补齐,加入A表有M行数据,B表有N行数据,结构是>=M行数据
让boy表中的数据挑选girl中数据:
select boy.*,girl.* from boy left join girl on boy.flower = girl.flower
让girl表中的数据挑选boy中数据:
select boy.*,girl.* from girl left join boy on boy.flower = girl.flower +
清除表内容Truncate tablename
右连接
select boy.*,girl.* from girl right join boy on boy.flower = girl.flower
左右连接可以相互转化 A lect join B on 条件 == B right join A on 条件
内连接
查询左右表都有的数据,不要左连接、右连接有null的那部分
内连接是左右连接的交集
select boy.*,girl.* from boy inner join girl on boy.flower = girl.flower
目前的mysql不支持外连接(out jion),可以使用union达到目的
视图view 视图是一张虚拟的表,没有真实的数据存在,只是与表的一种查询产生的关系,语句合并分析的过程
字符集与校对集
客户端使用的字符集:set character_set_client = gbk/utf8;
转换器转换后的字符集: set character_set_counection = gbk/utf8;
返回给客户端的字符集:set character_set_result = gbk/utf8;
如果以上三者都是同一种字符集可以使用:set names utf8/gbk;