🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
1.普通联表的语句 select a.*,b.* from A a ,B b where a.id=b.id; 2.内连接查询 select a.* ,b.* from A a inner join B b on a.id=b.id; A表和B表值相等的全匹配。 3.左连接查询 select a.* ,b.* from A a left join B b on a.id=b.id; 以左表为基准表,查询出来的结果等值的数据和左表不能匹配的右表的数据为null显示。 4.右连接查询 select a.* ,b.* from A a right join B b on a.id=b.id; 以右表为基准表,查询出来的结果等值的数据和右表不能匹配的左表的数据为null显示。 5.全连接 select a.* ,b.* from A a full join B b on a.id=b.id; 等值的结果和左表不匹配的结果和右表不匹配的结果都显示。 举例: 1.每个班级的学生的男,女数量。 SELECT COUNT(ssex),s.ssex,a.cname FROM t_classes a INNER JOIN t_stus s ON a.cid=s.scid GROUP BY a.cname,s.ssex 2. 把姓名重复的显示出来 SELECT u.uname ,COUNT(u.uname) FROM t_userinfo u GROUP BY u.uname HAVING COUNT(u.uname)>1 3. 把姓名重复的过滤 SELECT DISTINCT(uname) FROM t_userinfo