栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

MySQL加入where子句

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySQL加入where子句

您需要将其放在

join
子句中,而不是
where

SELECt *FROM categoriesLEFT JOIN user_category_subscriptions ON     user_category_subscriptions.category_id = categories.category_id    and user_category_subscriptions.user_id =1

请参见,使用

inner join
,在
join
或中放置一个子句
where
是等效的。但是,使用时
outer join
,它们有很大的不同。

作为

join
条件,您指定将要连接到表的行集。这意味着,它计算
user_id =1
第一,并采取子集
user_category_subscriptions
user_id
1
加入到所有的行
categories
。这将为您提供中的所有行
categories
,而只有
categories
该特定用户已订阅的行中的列才包含任何信息
user_category_subscriptions
。当然,所有其他字段
categories
null
在各
user_category_subscriptions
列中填充。

相反,

where
子句执行联接, 然后
减少行集。因此,这将执行所有联接,然后消除所有
user_id
不等于的行
1
。您将获得效率低下的方法
inner join

希望这会有所帮助!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/416253.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号