MySql_多表查询

多表查询

查询多张表是如果出现同名的列,需要将表名标注到列名前面

非同名的列,表名可以不加,推荐加上

        可为表添加别名

        一般取首字母,特殊下取所代表的含义

        表的别名只在本次查询中生效

如果表与表进行关联查询时:不添加关联条件,查询的总记录数是a*b=笛卡尔积

多表查询的时候必须要加条件

        等值

        非等值

等值关联查询

-- 将user表与class表通过 uid 进行等值关联查询
select user.name, user.uid,class.grade,class.uid from user, class where user.uid=class.uid;

-- 添加别名
select u.name,u.uid,c.grade,c.uid from user u, class c where u.uid=c.uid;

非等值关联查询

-- 判断成绩优秀等级

SELECT * FROM classes c, leveled l WHERE c.grade BETWEEN l.low AND l.high;

表的关联条件和业务查询条件混为一起,新版本语法进行优化:

自然连接:

        自动选择列名相同并且类型相同的列

-- 92语法
select u.uname,d.dname from uuser u, cclass c where u.uid=c.uid and c.grade > 70

-- 99语法
select u
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值