SELECT * FROM A a INNER JOIN B b on a.id=b.parentid;这个代码满足的条件为id为1和2,各3条数据,我想满足id为1和2的各留下一条数据,MySQL代码怎么实现
时间: 2024-06-02 17:07:13 浏览: 66
mysql实现合并同一ID对应多条数据的方法
您可以使用以下的MySQL代码来实现:
SELECT *
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY id) AS row_num
FROM A a
INNER JOIN B b ON a.id = b.parentid
WHERE id IN (1,2)
) AS subquery
WHERE row_num <= 1;
这个代码可以根据id进行分组,使用ROW_NUMBER()函数生成每个id分组内的行号,然后根据行号筛选出每个分组中的前一条数据,从而实现留下每个id的一条数据。
阅读全文