SELECT * FROM tb
WHERE ID>(SELECT MAX(ID) FROM
(SELECT TOP 10 ID FROM tb ORDER BY ID DESC) x
)假设ID是标识列
WHERE ID>(SELECT MAX(ID) FROM
(SELECT TOP 10 ID FROM tb ORDER BY ID DESC) x
)假设ID是标识列
解决方案 »
- 如何截取空格前字符串和空格后字符串?
- 求sql语句 两时间段内 工作日期的显示
- MSSQLSEVER不能启动.
- 急!在SQL2005附加过的数据库,然后在SQL2000附加和在sql2005都附加不了
- 一道sql题,规律我已看出,求做法,谢谢
- 数据类型问题:一个数据库字段设定为FLOAT类型,输入数据为384.80,但用查询分析器查询的结果却变成了384.80000000000001,这是为什么?
- 求一sql语句。(有点难)(万分感谢)
- 在Windows 2003下,sql server 2005总出现调试窗口,为什么?如何调试?谢谢!
- exec (@sqlstr)与exec ('......')有何区别吗?
- 怎么创建如下的触发器
- 求函数:输入数据名,查询该数据库的一个特定的表??????
- 求SQL查询语句
{col1 INT
col2 CHAR(10)
col3 CHAR(10)}假设PRIMARY KEY 是col1
你要查询的数据的顺序是依照col1排序的你可以通过以下语句得到前10行数据
SELECT TOP 10 col1 FROM Test ORDER BY col1下面你要找的数据就是不包含在这10条记录中的其他数据
SELECT * FROM Test WHERE col1 NOT IN (SELECT TOP 10 col1 FROM Test ORDER BY col1)
都not in ?有没有其他的办法?
10个的话,这个应该没有什么问题!!!
分页的存储过程用的是游标实现的吧?似乎效率也是不错的,至少大家都在用。
参考一下那个吧!!!
SELECT * FROM Test WHERE col1 > (SELECT TOP 1 col1 FROM (SELECT TOP 10 col1 FROM Test ORDER BY col1) AS A ORDER BY col1 DESC)这样应该能好些吧,只检测了语法,没有验证结果
select id, (ROW_NUMBER() OVER(ORDER BY ID )) as rownum from test
having rownum >10
select * into #tmp from dict_kbb
set rowcount 0
select * from dict_kbb where 编码 not in(select 编码 from #tmp)
drop table #tmp
如
id name
1 rwe
2 231809
3 73129807
5 372189
7 2371893217
.....
就取第10个记录的标识号码,,,假如是20,,
再取所有大于20的就好了...
同样道理...如果是日期排序.....
就取大于这个的日期.....不过也可以用 集合减的办法.....这个也很快..如bluedl的..
先取前十....然后再所有不在这10条记录的表记录...
select * from table where 标志 not in (select top 10 标志 from table)
个人觉得这个要好点.....