sql查找最后三条数据的语句怎么写 5

selecttop3*fromtablenamewhere[Name]=''A'orderby....desc';这样试过了不行哪位高手帮忙看下应该怎么写... select top 3 * from tablename where [Name]=''A' order by ....desc';

这样试过了 不行 哪位高手帮忙看下应该怎么写
展开
 我来答 举报
和小po一起成长
2014-08-28 · 南京多年的软件研发人员,业余专注少儿编程
和小po一起成长
采纳数:16 获赞数:52

向TA提问 私信TA
展开全部
这要看你是什么数据库。select top是sql server的用法。mysql是 select * from tablename where order by ...desc limit 3
追问
其实我想要的是最后第三条的数据  比如说最后一条NUM是25  我要取的就是23的数据   这样的话应该怎么改这条语句  用的是sql server
追答
我现在想到的方法是用两条语句来实现,我用的是mysql的语法。
select count(*) where tablename ;得出总记录数,比如25,算下倒数第三条记录号是23,然后select * from tablename limit 23,1;
1 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
百度网友2da356e
2014-08-28 · TA获得超过153个赞
知道答主
回答量:148
采纳率:0%
帮助的人:56.8万
展开全部
你数据库根据什么排列数据,只要把那列倒序然后取前三条,
数据表加一列标识就好了,根据标识排序
更多追问追答
追问
根据列名num   就是select top 3 * from tablename where [Name]=''A' order by  num  desc';   但是得不到结果 这样的写法有错吗
追答
排序列不对吧,num不是按顺序插入吧,最好的方法就是加自增列做标识
1 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
我要注册和登录
2014-08-28 · TA获得超过451个赞
知道小有建树答主
回答量:301
采纳率:100%
帮助的人:421万
展开全部
1
2
select top 1 * from (select top 3 * from tablename where [Name]='A' order by  num  desc) aa 
order by num ASC;
本回答被网友采纳
2 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式