gpt4 book ai didi

mysql - 过滤子查询的替代方案

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

我的查询可以按预期工作,但似乎应该有更好的方法来完成我想要的:

SELECT `x`.*
FROM (
SELECT `m`.`id`,
`m`.`email`,
MAX(`s`.`end`) AS `max_end`
FROM `members` AS `m`
INNER JOIN `memberships` AS `s`
ON `m`.`id` = `s`.`member_id`
GROUP BY `m`.`id`,
`m`.`email`
) AS `x`
WHERE `x`.`max_end` = '2010-02-28 23:59:59'

我正在寻找一位成员(member)资格在特定日期结束的成员(member)。 memberships 表的 startend 列包含成员资格的有效日期。我只想查看最后一个结束的成员资格期限,因此子查询中有 MAX()GROUP BY

最佳答案

这可以使用having重写:

SELECT `m`.`id`,
`m`.`email`
FROM `members` AS `m`
INNER JOIN `memberships` AS `s`
ON `m`.`id` = `s`.`member_id`
GROUP BY `m`.`id`,
`m`.`email`
HAVING MAX(`s`.`end`) = '2010-02-28 23:59:59'

关于mysql - 过滤子查询的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6296557/

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