关于select语句查询最新的数据(不使用order by)

来源:百度知道 编辑:UC知道 时间:2024/06/14 15:43:36
select * from 表名 ----->这样就能把数据库中1,2,3,4....对应的数据查询出来
select * from 表名 order by id ---->这样就能帮100,99,98... 对应的数据查询出来
但是order by 查询时间就会很长,我想请问各位有没有好的方法求出100,99,98... 对应的数据
我的问题不是求100,99,98....,而是求存入数据库中最新的数据
*****我不是就要求这个数,而是想求出一个方法,比如最新回复的10条纪录
*********我用的时mysql不能使用top,还有答案吗??

首先纠正你一个错误
select * from 表名 order by id desc 才能把100,99,98... 对应的数据查询出来 ,desc是倒序排列
不过你说的也没什么好办法了

除非:select * from 表名 where id in (100,99,98)

用 TOP 关键字,这样就可以得到最新插入的数据,而速度也快!

要10个就是:
SELECT TOP 10 * FROM ... ORDER BY id desc
================================================
这样试试:SELECT * FROM ... ORDER BY id desc LIMIT 0,10

前面忘说了,id为自增整数字段

你这样的要求只有一个办法 就是把数据按你的顺序插进去

select * from 表名 where id in(select max(id) from 表名)
直接查找最大的ID