MySQL问答

文章详细阐述了MySQL查询语句的执行顺序,从SELECT开始到LIMIT结束,并介绍了多表查询的不同方式,包括内连接(隐式与显式)、外连接(左、右)以及自连接和子查询。内连接只保留匹配数据,而外连接会包含匹配不到的数据以NULL填充。
摘要由CSDN通过智能技术生成

1 SQL规范

        1.1 Mysql查询语句的执行顺序?

                我们一般编写的SQL顺序是:select(字段列表)  -> from(表名列表) -> join on(表关联) -> where(条件列表) -> group by(分组字段列表) -> having(分组后条件列表) -> order by(排序字段列表) -> limit(分页参数)。

                执行顺序的话,只是把select(字段列表)排序到having(分组后条件查询)的后面。

        1.2 Mysql 如何实现多表查询?

                这个分了好多种,分为内连接和外连接,还能自连接和子查询,这些都是多表查询       

内连接又有两种:

        隐式内连接:select ...from 表A,表B where 条件...

        显式内连接:select ... from 表A inner join 表B on 条件...

外连接也是两种:

        左外连接:select ...from 表A left join 表B on 条件...

        右外连接:select ...from 表A right join 表B on 条件...

自连接,比如select ...from 表A 别名1,表A 别名2 where 条件...

子查询又包含了列子查询、行子查询、表子查询

        1.3 MYSQL内连接和外连接的区别?         

                内连接会取出连接表中匹配到的数据,匹配不到的不保留

                而外连接会取出连接表中匹配到的数据,匹配不到的也会保留,其值为NULL。

以某一个表为主表后,进行关联查询,不管能不能关联的上,主表的数据都会保留,关联不上的以NULL显示 。

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值