MYSQL自联结

文章目录

查找:生产ID为DTNTR物品的供应商,生产的其他物品。

子查询
sql 复制代码
SELECT
	prod_id,
	prod_name 
FROM
	products 
WHERE
	vend_id = ( SELECT vend_id FROM products WHERE prod_id = 'DTNTR' );
自联结
sql 复制代码
SELECT p1.prod_id,p1.prod_name   # 必须指定为p1.prod_id,p1.prod_name
FROM
	products AS p1,
	products AS p2 
WHERE
	p1.vend_id = p2.vend_id 
	AND p2.prod_id = 'DTNTR'

p2已经被限制为了具体的一行

sql 复制代码
SELECT p2.prod_id,p2.prod_name
FROM
	products AS p1,
	products AS p2 
WHERE
	p1.vend_id = p2.vend_id 
	AND p2.prod_id = 'DTNTR'
sql 复制代码
SELECT
	* 
FROM
	products AS p1,
	products AS p2 
WHERE
	p1.vend_id = p2.vend_id 
	AND p2.prod_id = 'DTNTR'
比较

从运行时间看,自联结比子查询快!

相关推荐
高级程序源9 分钟前
hive电商平台商品销售数据分析与趋势预测45659-计算机课程设计、毕业设计
vue.js·hive·spring boot·mysql·数据分析·django·课程设计
for_ever_love__31 分钟前
LangChain Text-to-SQL:让不会写 SQL 的人查数据库
数据库·sql·langchain·大模型·agent·rag·问答
梦想不只是梦与想44 分钟前
SQLAlchemy:查询与操作 (三)
数据库·python·sqlalchemy
Aric_Jones1 小时前
WAL / CDC / 复制槽 /位点
数据库·oracle
草莓熊Lotso1 小时前
【C++ 基于微服务的即时通讯系统】基建三件套:gflags + gtest + spdlog 源码编译安装与实战入门
linux·网络·数据库·c++·微服务·log4j
bksczm1 小时前
Redis基础篇之初识分布式
数据库·redis·分布式
for_ever_love__1 小时前
MySQL 索引类型全解:B+Tree / Hash / R-Tree / 全文 的底层差异,以及一次性建对的选型表
数据库·mysql·b+树·唯一索引·全文索引·索引类型·索引分类
仍然.9 小时前
Redis---缓存
数据库·redis·缓存
Aloudata10 小时前
LookML 语义模型 vs 企业级独立语义层:BI 建模语言能否承担企业语义底座?
数据库·人工智能·数据分析·数据资产·dataagent
细嗅蔷薇@10 小时前
排序和分⻚(order by 、limit)
数据库·oracle