select-Oracle可以对查询字段的结果集结果集进行为空判断吗

问题描述

Oracle可以对查询字段的结果集结果集进行为空判断吗

例如:select u.name from user u
在查询的时候对u.name的结果集进行判断,如果为NULL就输出提示,不为空就查询本身值

我项目中实际已经嵌套了几层函数了

解决方案

nvl等几个函数试试。http://www.cnblogs.com/wuyifu/p/3223346.html

解决方案二:

http://zhidao.baidu.com/question/2010826752610152748
这个你看看有没有帮助

解决方案三:

不是存储过程哦,就是查询语句。有点矛盾,需要查询的字段提前对它的值进行判断。

解决方案四:

写的不清,不知道你要处理成什么样,
比如单条记录判断那就是
 select decode(u.name,null,'是空的',u.name) from user u

解决方案五:

可以在程序内部进行再查询吗?先查出结果集,遍历非空再查一遍

解决方案六:

select nvl(u.name,'null') from user u

或者先,判断一下结果集

select count(*) from user u,如果有记录再取u.name

时间: 2024-08-03 03:58:43

select-Oracle可以对查询字段的结果集结果集进行为空判断吗的相关文章

oracle 分页查询-Oracle数据库分页查询

问题描述 Oracle数据库分页查询 分页查询语句.之前用java获取分页信息是分两步走的,首先获取想要得到的字段信息,第二部获取总记录数count(*).现在因为种种原因,就是想请教高手一下,能不能在一个sql中,查询出这些信息包括总记录数.比如 表 test 字段有id,name. select * from (select A.*,ROWNUM RN from(select * from test) A where ROWNUM<=11) where RN>=1; 这是分开写时,查询的语

sql-关于oracle 中的查询问题

问题描述 关于oracle 中的查询问题 求b表中的的"Aname +Aaspath"不能与b 表的"Bname +Baspath "相同,问这个sql要怎么写 解决方案 select * from A1 where Aname||Aaspath not in ( select Bname||Baspath from B1 ) select * from A1;1 少女1 住址1 2 少女2 住址2 3 少女3 住址3 8 少女8 住址8 7 少女7 住址7 sel

oracle常用sql查询语句部分集合(图文)_oracle

Oracle查询语句 select * from scott.emp ; 1.--dense_rank()分析函数(查找每个部门工资最高前三名员工信息) select * from (select deptno,ename,sal,dense_rank() over(partition by deptno order by sal desc) a from scott.emp) where a<=3 order by deptno asc,sal desc ; 结果: --rank()分析函数(

Oracle中简单查询、限定查询、数据排序SQL语句范例和详细注解_oracle

一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言. Oracle数据库之所以发展的很好,主要也是因为Oracle是全世界最早采用SQL语句的数据库产品. SQL功能强大,概括起来,它可以分成以下几组: 复制代码 代码如下: DML(Data Manipulation Language) 数据操作语言,用于

一个oracle+PHP的查询的例子_php基础

 http://qdlover.yeah.net   一个oracle+PHP的查询的例子   本来我不用php了,可是还是有很多朋友问我,我就做了一个例子,具体函数请查手册   其实oracle的函数和别的也差不多,只不过它这里多了一个定义输出变量的过程,   如果学过pl/sql的人都知道的(不过听说只有清华和西安交大用它做网站).   就是OCIDefineByName($id,"ROWNUM",&$rownum);对应了查询中的rownum,一个对应一个,   而且最应

oracle数据库分页查询实例小结

Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用.   分页查询格式:  代码如下 复制代码 SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A WHERE ROWNUM <= 40 ) WHERE RN >= 21   其中最内层的查询SELECT * FROM TABLE_NAME表示不进行翻页的原始查询语句.ROWNUM <= 40和RN >= 21控制分页查询的每页的

select * from 表名 where 字段&amp;amp;gt;&amp;amp;#39;5&amp;amp;#39;

问题描述 select * from 表名 where 字段>'5' 今天遇到了这个问题,里面有很多都是大于5的数据,当执行这条sql语句的时候就是,查询不出来数据,但是当换成1.2.3. 和10(包括10)以上的数据都可以查询出来数据,就是在4-9之间查询不出来数据, 解决方案 字段类型时什么?应该是>5吧,数字对比,>'5'按照字符对比,如果你字段值是'15'>'9'对比肯定false,因为第一位字符1小于字符9 解决方案二: 这样讲不清楚,没有你数据库的数据,先把你数据发出来

Oracle临时表 优化查询速度

oracle|临时表|速度|优化 1.前言    目前所有使用Oracle作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量.当然在Oracle中创建分区是一种不错的选择,但是当你发现你的应用有多张表关联的时候,并且这些表大部分都是比较庞大,而你关联的时候发现其中的某一张或者某几张表关联之后得到的结果集非常小并且查询得到这个结果集的速度非常快,那么这个时候我考虑在Oracle中创建"临时表".    我对临时表的理解:在Oracle中创

SQL多表链接查询、嵌入SELECT语句的子查询技术

高级查询技术主要是涉及多个表的链接查询技术.嵌入SELECT语句的子查询技术,把多个查询联合起来的联合技术等. 1. 连接查询 需要同时从两个或者连个以上的表中检索数据.链接就是允许同时从两个表或者两个以上的表中检索数据,指定这些表中的某个或者某些列作为连接条件.在SQL Server中,可以使用两种连接语法的形式,一种是ANSI链接语法形式,这是连接条件出现在FROM子句中;另外一种SQL Server链接语法形式,这是连接条件出现在WHERE条件中. 1. ANSI链接 链接错做可以同时查询