MySQL获取最年轻车主及其车辆里程的SQL查询求助
解决方法:关联车主表与车辆表获取目标结果
嘿,要得到包含车主详细信息和对应车辆里程的结果,咱们只需要把两张表关联起来查询就可以啦!你原来的语句只查了车辆表,现在用INNER JOIN把车主表和车辆表通过外键关联,就能一次性拿到所有需要的字段。
最终SQL语句
SELECT o.id, o.birth, o.name, c.mileage FROM Owners o INNER JOIN Cars c ON o.id = c.owner WHERE o.birth = (SELECT MAX(birth) FROM Owners);
语句说明
- 用
INNER JOIN关联Owners(别名o)和Cars(别名c),关联条件是车主表的id等于车辆表的owner外键; SELECT子句明确指定了你需要的四个字段:车主ID、出生日期、姓名,以及车辆里程;- WHERE子句保留了你原本判断最年轻车主的逻辑——通过
MAX(birth)找到最晚的出生日期(也就是最年轻的车主),筛选出对应的关联记录。
如果存在多个出生日期相同的最年轻车主,这个语句会返回所有符合条件的车主及其车辆信息,逻辑是完整的。
内容的提问来源于stack exchange,提问作者Jesper
相关产品推荐
相关产品推荐

