我正在寻求一些帮助,我的左加入限制。如何获得左加入限制
我想要做的是循环通过我的用户,并检查另一个表,如果有问题连接到用户。
,但目前我得到的各种怪异的结果,并没有限制结果为每一个用户,它也列出列status_link_missing = 0,即使我已经告诉子查询只列出status_link_missing = 1
因此,我现在卡住了,非常感谢帮助!
SELECT
a.user_id AS settings_userid
, a.contact_interval
, b.user_id
, b.notify_user
, b.status_host_down
, b.status_link_missing
, b.status_relnofollow
FROM `link_exchange_settings` a
LEFT JOIN link_exchange_links b
ON b.id
= (SELECT c.id
FROM link_exchange_links AS c
WHERE
b.user_id = a.user_id
AND c.notify_user = 1
AND c.status_link_missing = 1
LIMIT 1
)
WHERE a.allow_contact = 1
LIMIT 10
编辑
我切换SELECT b.id现在c.id和LIMIT的作品,但现在它仅适用于第一个用户
感谢@ypercube这个伎俩!你从完全失败中拯救了我的大脑,非常感谢! – John
好听。这看起来像写一个“每组最大”查询的奇怪方法,但我经常在MySQL中使用它(对于正确的索引它通常是有效的)。 –