299篇(以后博客篇数写到正文里面了)
可以完全参考这个方法,点击链接MySQL 多表关联一对多查询实现取最新一条数据的方法示例
下面的sql可以实现,主表关联详情表,详情表需要查两次
SELECT
cr.id,
cr.real_name,
oi.industry,
oi.nature_tax
FROM
customer AS cr
LEFT JOIN (
SELECT a.industry, a.nature_tax, a.customer_id, a.create_time FROM order_info AS a
LEFT JOIN (
SELECT MAX(id) AS id, customer_id FROM order_info GROUP BY customer_id
) AS b ON a.customer_id = b.customer_id
WHERE a.id = b.id
) AS oi ON oi.customer_id = cr.id;
下面是我自己个的sql
SELECT a1.id,
a1.value_submit,
b1.id,
b1.purchase_apply_no,
b1.department_id ,
b1.budget_class_id,
b1.project_no,
b1.occupy_id
FROM t_occupy AS a1
JOIN
(SELECT a.*
FROM t_occupy_detail AS a
LEFT JOIN
(SELECT max(id) AS id,
occupy_id
FROM t_occupy_detail
GROUP BY occupy_id ) AS b
ON a.occupy_id = b.occupy_id
WHERE a.id = b.id ) AS b1
ON a1.id = b1.occupy_id
AND b1.cost_type = a1.status
WHERE a1.enable=1
AND b1.enable=1