比如有个表userid,name
300,'xiaohong'
200,'xiaoming'
400,'xiaogang'
200,'xiaoxin'现在要查询id为200的所有记录在user中的行号,这里为2,4,该如何写sql语句呢?

解决方案 »

  1.   


    select rn
    from
    (
        select rownum rn,id,name
        from user
    )
    where id = 200
      

  2.   


    如果user表记录相当多,而该查询使用的次数相当频繁,这么查询会不会很慢?
      

  3.   


    如果user表记录相当多,而该查询使用的次数相当频繁,这么查询会不会很慢?
    数据量大的时候慢是全表遍历查询所引起的,可以考虑索引,这个sql不是慢的原因所在