分享

oracle 获取第一条数据

 群先 2022-10-10 发布于山东

关于取第一条数据的sql特此作了一个例子如下:

  1. SELECT * FROM tableName where fd_rt = 'A'
  2. --and rownum=1
  3. ORDER BY fd_date DESC
标题

正常说 第一条数据应为  16bf4eb91606de5e0ff61f94d0f8f20f

在where 后 直接跟条件 使用此sql时结果如下 

  1. SELECT * FROM tableName where fd_rt = 'A'
  2. and rownum=1
  3. ORDER BY fd_date DESC

可是查询结果为 第二条数据

正确使用方式为:

  1. SELECT t.* from
  2. (
  3. SELECT * FROM tableName where fd_rt = 'A' ORDER BY fd_date DESC
  4. ) t WHERE rownum = 1

rownum作为伪列实际上查询结果为:

  1. SELECT tableName .*,rownum FROM tableName where fd_rt = 'A'
  2. --and rownum=1
  3. ORDER BY fd_date DESC

  1. SELECT t.*,rownum from
  2. (
  3. SELECT * FROM tableName where fd_rt = 'A' ORDER BY fd_date DESC
  4. ) t

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多