Mysql:左连接错误的子查询结果集vs子查询结果
我编写了一个查询,以获得具有限制的结果,然后查询的结果将左连接到其他表。 如果只查询子查询,则得到正确的结果Mysql:左连接错误的子查询结果集vs子查询结果,mysql,Mysql,我编写了一个查询,以获得具有限制的结果,然后查询的结果将左连接到其他表。 如果只查询子查询,则得到正确的结果 SELECT LE.* FROM legder_expenses LE WHERE LE.created_by = 437 ORDER BY LE.id DESC LIMIT 0,30 结果 但当使用上面的查询作为子查询,并将它们左键连接到其他可能有数据或没有数据的表时 SELECT Legder.id, L
SELECT
LE.*
FROM
legder_expenses LE
WHERE
LE.created_by = 437
ORDER BY
LE.id DESC
LIMIT
0,30
结果
但当使用上面的查询作为子查询,并将它们左键连接到其他可能有数据或没有数据的表时
SELECT
Legder.id,
Legder.created
FROM
(
SELECT
LE.*
FROM
legder_expenses LE
WHERE
LE.created_by = 437
ORDER BY
LE.id DESC
LIMIT
0,30
) Legder
LEFT JOIN legder_voucher_types LegderVoucherType ON LegderVoucherType.id = Legder.legder_voucher_type_id
LEFT JOIN legder_types LegderType ON LegderType.id = Legder.legder_type_id
LEFT JOIN legder_expense_details LegderDetail ON LegderDetail.legder_expense_id = Legder.id
LEFT JOIN legder_expense_images LegderImage ON LegderImage.legder_expense_id = Legder.id
结果
我不知道为什么这些查询会给出不同的结果,即使我使用左连接我只是在查询结束时添加order by,现在一切正常
SELECT
Legder.id,
Legder.created
FROM
(
SELECT
LE.*
FROM
legder_expenses LE
WHERE
LE.created_by = 437
ORDER BY
LE.id DESC
LIMIT
0,30
) Legder
LEFT JOIN legder_voucher_types LegderVoucherType ON LegderVoucherType.id = Legder.legder_voucher_type_id
LEFT JOIN legder_types LegderType ON LegderType.id = Legder.legder_type_id
LEFT JOIN legder_expense_details LegderDetail ON LegderDetail.legder_expense_id = Legder.id
LEFT JOIN legder_expense_images LegderImage ON LegderImage.legder_expense_id = Legder.id
ORDER BY
Legder.id DESC
您的结果#1仅显示22行30行,因此很难理解结果#2中标记的日期值是否存在。草莓你能解释更多吗,我无法从linkHi Akina那里理解,我的问题只是第一次记录,not count of records I无法在创建的顶部获取最新记录='2020-02-12'在连接表时,您没有选择任何列