请别这么简单的回答,我不是初学者,你那方法是效率最低的, 我需要的是更简捷的方法 如果能一句SQL实现最好 同时,谁能告诉我WITH TIES的作用,也将得到奖分 对了,忘了告诉大家了,我用的是SQL SERVER 7.0
select * from... where ... order by id desc top 10
使用desc,不是升序 我已经使用过如下的语句 SELECT TOP 10 * FROM ... WHERE .. ORDER BY ID DESC SELECT TOP 10 WITH TIES * FROM ... WHERE ORDER BY ID
select * from (select top 10 * from ... order by id) order by id desc 我的想法是先倒序把最先10条找出,然后以此为子表,再升序输出出来。不知这样是否符合要求。 由于没有检查,可能语法不太对。 with ties 的解释为:它只和order by 子句一起使用。 select top 10 with ties * from ... where 0rder by id 如果id列中有相同的值,且彼此有联系,则连相同值一起返回,不受top n的限制。 我现在也在使用sql7.0希望能多多交流。我的oicq:7787547
在wind13的提示下,问题解决 但wind13的实现还是有问题 正确的答案是 select * from Table where id in (select top 10 from Table order by id desc) order by idwind13有关with ties的解答是正确的如果那位高手能有更好的解决办法,请与我联系,OICQ:372258 我将另给予奖分
我需要的是更简捷的方法
如果能一句SQL实现最好
同时,谁能告诉我WITH TIES的作用,也将得到奖分
对了,忘了告诉大家了,我用的是SQL SERVER 7.0
我已经使用过如下的语句
SELECT TOP 10 * FROM ... WHERE .. ORDER BY ID DESC
SELECT TOP 10 WITH TIES * FROM ... WHERE ORDER BY ID
我的想法是先倒序把最先10条找出,然后以此为子表,再升序输出出来。不知这样是否符合要求。
由于没有检查,可能语法不太对。
with ties 的解释为:它只和order by 子句一起使用。
select top 10 with ties * from ... where 0rder by id
如果id列中有相同的值,且彼此有联系,则连相同值一起返回,不受top n的限制。
我现在也在使用sql7.0希望能多多交流。我的oicq:7787547
但wind13的实现还是有问题
正确的答案是
select * from Table
where id in (select top 10 from Table order by id desc)
order by idwind13有关with ties的解答是正确的如果那位高手能有更好的解决办法,请与我联系,OICQ:372258
我将另给予奖分