首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从表中选择n个最后一个linesChubb

问从表中选择n个最后一个linesChubb
EN

Stack Overflow用户
提问于 2015-03-19 23:59:31
回答 3查看 31关注 0票数 0

是否可以在不使用日期字段的情况下获取关系表中的最后n个插入?

例如,在表Author中

代码语言:javascript
复制
Author(authid, f_name, l_name)

此外,authid不是一个自然数(例如。1,2,3,4.)但是一个字符串(例如: JohnM32015)

我正在使用MySQL。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-20 00:01:54

表没有保证的排序顺序。如果一个查询显式地定义了一个查询,它就会这样做。例如,如果您的记录有一个递增的authid值,那么最后N个插入将是该列的最高N个值。所以你可以按那一列降序,取上面的N:

代码语言:javascript
复制
SELECT * FROM Author ORDER BY authid DESC LIMIT 10 

然而,您定义了“最后一个N",您可以按照降序排序顺序在查询中指定该定义,并从该结果中获取最高的N个记录。

票数 0
EN

Stack Overflow用户

发布于 2015-03-20 00:01:28

如果authid是自动增量,那么您可以这样做。

代码语言:javascript
复制
select * from author
order by authid desc

要获得有限数量的记录,例如在Server中使用top n或在MySQL中使用limit n。

票数 1
EN

Stack Overflow用户

发布于 2015-03-20 00:09:01

如果您想要“最近”的10条记录,您可以像其他答案那样编写查询,但是order by字段定义了“最近”的情况。如下所示:

代码语言:javascript
复制
SELECT * FROM MyTable ORDER BY <your date field(s)> DESC LIMIT 10;

免责声明:如果表中没有数据来定义任何应该是“最近”记录(比如"DateInserted“字段或自动递增字段)的记录,那么您就没有一种简单的方法可以使用SQL来实现这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29157136

复制
相关文章

相似问题

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