一尘不染

SQL查询对一个表中的行有限制,而不是结果集

sql

我正在运行一个带有联接的简单查询,类似于

SELECT t1.a, t2.b FROM t1 LEFT JOIN t2 ON ... LIMIT 5

由于LIMIT语句中的t1行很多t2(大于2的数),因此不会返回的前5行t1和的相应条目t2,而是返回5行(通常包括的2-3行)t1

如何编写此查询以从中获取前5行t1以及从中获取对应的条目t2


使用MySQL 5.0.45。


阅读 100

收藏
2021-05-23

共1个答案

一尘不染

SELECT t3.a, t2.b FROM (SELECT * FROM t1 LIMIT 5) t3
LEFT JOIN t2 ON ...

请注意,如果使用没有’order by’子句的limit,则不会定义将获得的5行。如果这不是您想要的,请考虑添加“ order by”子句。

2021-05-23