4、使用in的子查询.sql

来自「本代码简单明了」· SQL 代码 · 共 40 行

SQL
40
字号


--使用IN的子查询
--功能实现:查询所有曾出版过商业书籍的出版商的名称
--设计的表和结构:
--publishers表(包含出版商的名称)和titles表(包含出书的详细信息)
--------------------------------------------------------------------------------


select pub_name,pub_id
from publishers
where pub_id in
(select pub_id
from titles
where type = 'business')

select * from titles
--显示publishers表中的字段。(和联接的区别)


--------------------------------------------------------------------------------

select pub_name,title,publishers.pub_id,titles.pub_id
from publishers inner join titles 
on publishers.pub_id = titles.pub_id and type = 'business'
--将两个表的所有的公共数据都查出来。(和子查询的区别)
--但是这样的结果并不符合要求,要达到要求怎么更改?

select * from publishers 
select * from titles where type = 'business'

--总结:1、使用联接和子查询的区别:联接可以在结果中显示多个表中的列。
--例如:要在结果中显示 title 该怎么办?
	只能用联接才能实现。




	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?