gpt4 book ai didi

mysql - 按最大(时间)mysql分组

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

首先,这有点重复: GROUP BY having MAX date我发布问题是因为已接受的答案对我不起作用,我也不知道为什么。我的问题:

我想选择所有函数 (func_ids) 的最新 (max(timestamp)) 校验和。

来自@Bill Karwin 的代码(接受的答案)

SELECT func_id,checksum
FROM Content cnt
INNER JOIN (
SELECT func_id, MAX(timestamp) AS maxdate
FROM Content GROUP BY func_id
) AS max USING (func_id,maxdate);

Mysql错误:#1054 - “from 子句”中的未知列“maxdate”

我的 table :

CREATE TABLE `Content` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`func_id` int(6) NOT NULL,
`description` text CHARACTER SET utf8 NOT NULL,
`returns` varchar(255) CHARACTER SET utf8 NOT NULL,
`var` varchar(255) CHARACTER SET utf8 NOT NULL,
`content` text CHARACTER SET utf8 NOT NULL,
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`checksum` varchar(40) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `func_id` (`func_id`),
KEY `var` (`var`),
KEY `checksum` (`checksum`),
FULLTEXT KEY `description` (`description`)
) ENGINE=MyISAM AUTO_INCREMENT=885 DEFAULT CHARSET=latin1

最佳答案

据我了解,当您将 USING 用于内部联接时,MySQL 的 sintaxis 需要在两个表中将列命名为相同的。内容表中没有名为 maxdate 的列,因此错误跳转。您也许可以尝试(如果我理解正确的话)

SELECT func_id,checksum
FROM Content cnt
INNER JOIN (
SELECT func_id, MAX(timestamp) AS maxdate
FROM Content GROUP BY func_id
) AS max ON (cnt.func_id=max.func_id AND max.maxdate=cnt.timestamp);

关于mysql - 按最大(时间)mysql分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24811109/

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