当前位置:   article > 正文

mySQL主表与子表一对多关系,left join关联查询子表中其中一条记录_mysql a表是主表 b表是子表 1对多的关系 现在查询 a b 联查 查询 b id最大的一条

mysql a表是主表 b表是子表 1对多的关系 现在查询 a b 联查 查询 b id最大的一条

1、left join测试示例

  1. SELECT
  2. a.id,
  3. a.create_name,
  4. a.create_time,
  5. b.id AS bId,
  6. b.charge_key,
  7. b.check_status
  8. FROM
  9. patient_check_list a
  10. LEFT JOIN patient_check_item b ON b.business_id = a.id

主表和子表通过LEFT JOIN 关联后,主表以重复的方式对应多条右表记录。

2、实现主表与子表一对一对应。

2.1 使用group by ,找出右表一条记录与主表关联

  1. SELECT
  2. a.id,
  3. a.create_name,
  4. a.create_time,
  5. b.id AS bId,
  6. b.charge_key,
  7. b.check_status
  8. FROM
  9. patient_check_list a
  10. LEFT JOIN ( SELECT id, business_id, charge_key, check_status FROM patient_check_item GROUP BY business_id ) b ON b.business_id = a.id

2.2 使用group by 和 min或max聚合函数,找出右表最新或最旧的一条记录与主表关联

  1. SELECT
  2. a.id,
  3. a.create
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/994482
推荐阅读
相关标签
  

闽ICP备14008679号