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后嵌套返回的是一个结果集(表),所以必须给这个表起一个别名.
SELECT *
FROM (SELECT * FROM student s) as a
INNER JOIN s_card sc
ON a.id = sc.s_id
4.在where中嵌套
在where后的子查询一般与条件运算符连接使用,当做一个条件.同样如果有一张学生表(student),和一张借书卡表(s_card),两张表通过学生id关联,且每个学生只对应一张借书卡.如果需要知道卡号=1的学生的信息就可以用到where后嵌套子查询的方法.
SELECT s.*
FROM student s
WHERE EXISTS(SELECT sc.id FROM s_card sc WHERE sc.s_id = s.id AND s.id=1)
mysql查询语句,子查询的几种方式相关推荐
- SQL查询语句——子查询
1.带多重子查询的复杂SQL语句 select a.studentNo,studentName,b.courseName,c.score from Student a,Course b,Score c ...
- mysql的语句分类,查询、子查询及连接查询
一.mysql查询的五种子句 where(条件查询).having(筛选).group by(分组).order by(排序).limit(限制结果数) 1.where常用运算符: 比较运算符 &g ...
- jq取第一个子元素为select_Java修行第036天---MySQL中的子查询,分页语句,三大范式...
学习目标: 1.掌握子查询 2.了解正则表达式 3.理解索引的作用和创建索引 4.了解用户管理 5.掌握分页语句 6.了解执行计划和数据库引擎 7.理解数据库设计的三大范式 综合程序图: 1 子查询知 ...
- any在mysql语句中用法,MySQL中,子查询中可以使用运算符ANY,它表示的意思是______。...
MySQL中,子查询中可以使用运算符ANY,它表示的意思是______. 答:至少一个值满足条件 According to your textbook, the main purpose of a s ...
- Mysql的查询语句(联合查询、连接查询、子查询等)
Mysql的各个查询语句(联合查询.连接查询.子查询等) 一.联合查询 关键字:union 语法形式 select语句1 union[union选项] select 语句2 union[union选项 ...
- mysql查询子表的语句_MySQL基本SQL语句之单表查询、多表查询和子查询
一.简单查询: 1.基本语法: SELECT * FROM tb_name;//查询全部 SELECT field1,field2 FROM tb_name; //投影 SELECT [DISTINC ...
- mysql分组查询和子查询语句_6.MySQL分组聚合查询,子查询
自己的MySQL阅读笔记,持续更新,直到看书结束. 数据库技术可以有效帮助一个组织或者企业科学.有效的管理数据,也是现在很多企业招聘数据分析师的必备要求之一. 大家如果看过MySQL的书,也可以看我的 ...
- mysql多表查询sql语句怎么写_MySQL基本SQL语句之单表查询、多表查询和子查询
一.简单查询: 基本语法: SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * F ...
- mysql学习day05—子查询 / CASH语句 / 连接查询
子查询 单行子查询:返回单行单列 多列子查询:返回单行多列(使用成对比较) 多行子查询:返回多行单列 相关子查询:子查询使用了外部SQL的某些表或列(但是外部SQL不可使用子查询中的表和列) 嵌套子查 ...
最新文章
- 【BZOJ】1607: [Usaco2008 Dec]Patting Heads 轻拍牛头
- iOS Podfile里面的use_frameworks!引发的血案
- 教程:正确的SLF4J日志记录用法以及如何检查它
- p沟道mos管导通条件_打开知识大门的捷径!MOS管基本认识
- kafka jar包_Kafka系列文章之安装测试-第2篇
- TokenInsight:反映区块链行业整体表现的TI指数较昨日同期上涨3.55%
- 村上隆首场中国直播,火山同传打造“影院级字幕”
- CUDA C编程(二)CUDA编程模型
- 如何测试自己适合什么大学专业
- RNNoise降噪训练
- 分析、归纳、综合、演绎
- python 二维码生成器_python二维码生成器
- ES6新增API - Reflect
- Pytorch构建Transformer实现英文翻译
- 凯思面试经历转置一个string
- jQuery官网下载文档的步骤
- Python-opencv 批量处理图片
- [Javascript 高级程序设计]学习心得记录11 js的BOM
- Sequence operation HDU - 3397
- 重磅《中华人民共和国数据安全法》最全图解附全文
热门文章
- Python爬虫实列:新浪微博热门话题
- 机器学习模型-外卖订单量预测异常报警模型实践
- 常见 Optimizer 梯度下降优化算法总结
- 准备换老古董,拟了个配置单,想征求大家的意见,谢谢!
- Codeforces-1604 D: Moderate Modular Mode
- 软件质量保证与测试——第二章 黑盒测试
- java keydown_键盘事件之keydown keypress keyup区别
- 进存销是什么?进存销业务流程有哪些?
- matlab移花接木,天龙八部分析帝:天山移花接木VS明教怒火连斩
- 吴恩达机器学习之Octave教程(Octave Tutorial):基本操作、移动数据、 计算数据、绘图数据、控制语句:for,while,if语句、 向量化、工作和提交的编程练习