我只想选择提交了个人资料图片的用户。我有两张桌子,users
和users_info
。
该users
表包含有关用户的基本信息
该users_info
表包含除基本信息外使用的信息
我将能够使用 PHP 来获取一堆用户,并且只使用那些有图像的用户,但我更喜欢使用单个查询来做到这一点。我怎样才能做到这一点?
我只想选择提交了个人资料图片的用户。我有两张桌子,users
和users_info
。
该users
表包含有关用户的基本信息
该users_info
表包含除基本信息外使用的信息
我将能够使用 PHP 来获取一堆用户,并且只使用那些有图像的用户,但我更喜欢使用单个查询来做到这一点。我怎样才能做到这一点?
这应该这样做:
SELECT u.id
FROM users as u
INNER JOIN users_info as ui
ON u.id = ui.user_id
WHERE profile_image is not null
如果您不熟悉联接,我建议您阅读这篇文章。这是我发现的最好的向人们介绍这个概念的方法。
select t1.*, t2.*
from users t1
inner join users_info t2 on t1.id = t2.id
where t2.profile_image is not null
-- 请注意,如果每个用户信息记录都有个人资料图像,则不需要 where 子句。