mysql查询语句,子查询的几种方式

1.子查询的语法

        子查询的语法与正常的sql查询语句一致,只是嵌套在sql语句中,通常用来简化多表联查,也可以与多表联查混合使用,子查询语句可以嵌套在select,form,where等关键字后.

        例如: select(子查询) form 表 where 条件

                 select 返回值 form (子查询) where 条件

                 select 返回值 form 表 where (子查询)

        需要注意的是子查询嵌套在select后是返回一个值,相当于查询语句中给定的返回值;嵌套在form后的子查询返回一个结果集(表);嵌套在where后一般与条件运算符连接使用.

2.在select中嵌套

        如果有一张学生表(student),记录着学生的名字(name),学号(id),性别(sex)等信息,另外一张表借书卡表(s_card),记录着学号对应的借书卡号(id)等信息,且每个学生只对应一张借书卡.如果想要在一张表中显示出学号对应的卡号关系,就可以用到在select中嵌套的子查询.

SELECT s.id,(SELECT sc.id FROM s_card sc where sc.s_id = s.id ) as s_card_id
FROM student s

3.在from中嵌套

        在form后的子查询一般与关联查询同时使用,如果有一张学生表(student),和一张借书卡表(s_card),两张表通过学生id关联,且每个学生只对应一张借书卡.现在我想要同时知道两张表的信息,就可以用到from后嵌套子查询的方法.需要注意的是子查询在from后嵌套返回的是一个结果集(表),所以必须给这个表起一个别名.


                
  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值