我在 MySQL 查询中有一个相当简单的一对多类型连接。在这种情况下,我想通过左表限制我的结果。
例如,假设我有一个accounts
表和一个comments
表,我想从中提取 100 行accounts
以及每个表的所有关联comments
行。
我能想到的唯一方法是在 FROM 子句中使用子选择,而不是简单地选择 FROM accounts
。这是我目前的想法:
SELECT a.*, c.* FROM
(SELECT * FROM accounts LIMIT 100) a
LEFT JOIN `comments` c on c.account_id = a.id
ORDER BY a.id
但是,每当我需要进行某种子选择时,我的中级 SQL 知识就会感觉它做错了什么。
有没有更有效或更快的方法来做到这一点,或者这很好吗?
顺便一提...
这可能是最简单的方法,我可以作为答案。我只是想弄清楚是否有另一种方法可以在速度方面与上述陈述竞争。