不知道你什么数据库,以sqlserver2005以上版本为例 表和数据就你给的这个,我起的表名叫test 先要执行一步,把数据放到临时表Select no=Identity(int,1,1),* Into #temptable From test 然后,执行以下sql语句,其中2个number=5是你的条件,要找5出现的行select b.no-a.no-1 from(select row_number() over (order by no) rn,no,number from #temptable...