我有一个主表,它通过一对多关系与其他10个表相关联。
例如:
main Table table1 table2
---------- ------- -------
id * id* id*
name mainTableId** mainTableId**
column1 column2
我试过:
SELECT *
FROM main_table
LEFT OUTER JOIN table1 On table1.mainTableId = main_table.id
LEFT OUTER JOIN table2 On table2.mainTableId = main_table.id
...
问题是我得到了很多结果,因为每一个结果 main_table
是所有结果的乘积 table1
, table2
等等。
我只想用一个 SELECT
查询,因为查询数据库10次需要很长时间。
从每个表中检索100个结果就足够满足我的需要了,但是尝试执行以下操作会导致一个错误 limit is not supported with a sub query
:
LEFT OUTER JOIN table1 WHERE id in (
SELECT id FROM table1 WHERE mainTableId = mainTable.id LIMIT 100
)
我用的是aws极光。如何改进此查询?
1条答案
按热度按时间hgb9j2n61#
对于第二个问题,您可以从其他表中获取100行,然后将它们连接起来!