sql - 在我的查询中当 RowNum =1 时没有得到空值

标签 sql oracle oracle11g

在我的查询中

Select AT.PRE_LAST_DATE 
From AUTHORIZATION AT 
Where AT.PROJECT_ID = 5 and AT.PRE_DESIG_ID = 48   
Order By AT.ID Desc;

我有两个约会

  1. 2019 年 5 月 17 日 00.00.00

但是当我使用Rownum = 1时,它不会返回空值

Select AT.PRE_LAST_DATE 
From AUTHORIZATION AT 
Where AT.PROJECT_ID = 5 and AT.PRE_DESIG_ID = 48 and ROWNUM = 1  
Order By AT.ID Desc;

它返回:

  1. 2019 年 5 月 17 日 00.00.00

现在如何获取第一个空值?

最佳答案

ORDER BYWHERE 之后应用子句,该子句仅以未定义的顺序返回其中一行。要先排序,然后选择顶行,请使用子查询:

Select PRE_LAST_DATE 
From 
    (Select AT.PRE_LAST_DATE From 
        AUTHORIZATION AT 
        Where AT.PROJECT_ID = 5 and AT.PRE_DESIG_ID = 48
        Order By AT.ID Desc)
Where ROWNUM = 1;

关于sql - 在我的查询中当 RowNum =1 时没有得到空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56205315/

相关文章:

php - 根据 IP 和用户代理字符串更新唯一 View

MySQL统计最大行数

java - 数据库与数据表日期显示值不同

sql - 选择语句上的SQL内部联接

sql - oracle —将oracle表中的多个用逗号分隔的值拆分为多行

java - 了解神秘的 Oracle JDBC 错误 - ORA-00911 : invalid character

php - 如何在 win7 x64 上使用带有 php (xampp) 的 oracle 客户端 11.2

python - 我可以使用什么语言来快速执行此数据库汇总任务?

mysql - SQL COUNT DISTINCT 值通过 JOIN 绑定(bind)到记录

oracle11g - 如何使用alter命令为已经有主键的表定义复合主键?