gpt4 book ai didi

mysql - sql mysql 最大()

转载 作者:行者123 更新时间:2023-11-29 18:29:51 25 4
gpt4 key购买 nike

我需要使用 MAX 语句显示查询,但我不知道如何操作。我将用两个简单的表格进行解释,以便更好地理解。

  • 1 table 家庭
family------id int(1) - PKname varchar(255)
  • 1 table
person------id int(1) - PKFK_id_family - FK family(id)first_name varchar(255)age int(1)

表格内容

family------1 - DUPONT2 - MARTIN3 - PETIT4 - DUPRES
person------1 - 1 - Jean - 70 (family DUPONT)2 - 1 - Jeannette - 65 (family DUPONT)3 - 1 - Pierre - 35 (family DUPONT)4 - 1 - Nicolas - 29 (family DUPONT)5 - 2 - Andre - 69 (family MARTIN)6 - 2 - Ginette - 58 (family MARTIN)7 - 2 - Benjamin - 25 (family MARTIN)

我需要一个查询来显示 family.name、person.first_name、person.age,其中该人是家庭中年龄较大的人,并且还显示没有链接到的人的姓氏。结果就是这个。

DUPONT - Jean - 70MARTIN - Andre - 69PETIT - NULL - NULLDUPRES - NULL - NULL

感谢您的帮助

最佳答案

首先,您需要通过对 person 表中的 FK_id_family 进行分组来获取最大age,然后将其与 family 连接。这样,您将获得姓名和最高的年龄

现在,您需要与 person 表进行连接以获取 first_name 列。我没有测试过下面的sql。但是,我希望这会给您带来预期的输出。

select 
f.name,
pr.first_name,
p.age
from family f
inner join
(select FK_id_family as id, MAX(age) as age from person group by FK_id_family) p on p.id=f.id
inner join
person pr on pr.FK_id_family=p.id

关于mysql - sql mysql 最大(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45784169/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com