首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql :用于在历史表中按键选择最新项的算法

问Mysql :用于在历史表中按键选择最新项的算法
EN

Stack Overflow用户
提问于 2018-11-08 14:28:32
回答 1查看 33关注 0票数 0

我正面临一个算法问题。我有一张桌子,这是我没有建的历史表。这张桌子有这样的结构:

id -文件-注释日期-注释-作者

1-1- 20180901 -嗨-2

2-1- 20170901 -你好-3

3-2--

4-2- 20160504 -嗨大家好-4

每个文件都可以有多个注释,但我只想在每一个文件中选择一行,并记录最近的注释。

我试了一组不同的组合,有,在哪里,最大.但没能得到预期的结果。

我想这只是个骗局,但我不.

欢迎任何帮助!

谢谢文森特

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-08 15:10:39

您可以通过排除连接来完成这一任务:

代码语言:javascript
复制
SELECT c1.id, c1.file, c1.comment_date, c1.comment, c1.author
FROM comments c1
LEFT JOIN comments c2
ON c2.file = c1.file AND c2.id > c1.id 
WHERE c2.id IS NULL

我使用id列来确定每个文件最近的行,而不是comment_date列,因为每个文件可能有重复comment_date值的行。

如果必须使用comment_date,则如果存在重复日期,则可以使用返回到id的查询:

代码语言:javascript
复制
SELECT c1.id, c1.file, c1.comment_date, c1.comment, c1.author
FROM comments c1
LEFT JOIN comments c2
ON c2.file = c1.file AND c2.comment_date > c1.comment_date AND c2.id > c1.id 
WHERE c2.id IS NULL
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53209788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档