u013003369
1210817109
2015-11-19 10:09
采纳率: 73.7%
浏览 3.0k

sql 查询数据在第几条

有一个表user
code name
001 xiaoli
002 xiaowang
005 xiaoming
003 lili
004 sansan
007 meimei
现在想使用sql语句查询出code是005的数据在第几行,
请问这条sql语句怎么写,谢谢,大神!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • lwj_2011
    lwj_2011 2015-11-19 14:51
    已采纳

    SELECT CODE,NAME,ROW_NUMBER() OVER(ORDER BY CODE) AS ROWNUM FROM user;

    点赞 评论
  • CS568591377
    CS568591377 2015-11-19 10:16

    你的排序字段呢??一般是id,但是没看到你的有,不过我可以举个例子假如你这个按照code排序的话,那么SQL就是这样的

     select count(1) as '第几行' from user where id <= (select id from user where code = '005')
    
    点赞 评论
  • havedream_one
    havedream_one 2015-11-19 10:20

    (select count(*) from user where code <= '005' ) - (select count(*) from user where code < '005')

    点赞 评论
  • Jimking_gg
    青青椒 2015-11-19 10:21

    你定义一个主键设置自增变量就好了,你输入一条自动增加1,直接查找你定义的那个主键

    点赞 评论
  • u013003369
    1210817109 2015-11-19 10:32

    code仅仅只是标识,没有什么意义,有可能是kkkk,ccccc只是不重复罢了

    点赞 评论
  • beyon2008
    beyon2008 2015-11-20 02:00

    select rn from (select rownum as rn, code from user) z where z.code = '005'

    点赞 评论
  • u011661028
    _BenChen 2015-11-24 03:38

    你这个问题问的奇怪啊 你是按照什么排序来看是第几行的 如果是数据库存储的排序的话 oracle有个rownum的隐藏字段

    点赞 评论

相关推荐