- 浏览: 1379171 次
- 性别:
- 来自: 江西
文章分类
- 全部博客 (287)
- oracle (30)
- Java (73)
- MySQL (16)
- Myeclipse/eclipse (12)
- javascript (15)
- JSP/Servlet (7)
- maven (14)
- AJAX (2)
- JQuery (9)
- tomcat (8)
- spring (21)
- Linux (28)
- PHP (9)
- UI (1)
- 编程错误及处理 (38)
- 多线程 (18)
- hibernate (10)
- Web Service (3)
- struts2 (6)
- log4j (3)
- SVN (4)
- DWR (1)
- lucene (1)
- 正则表达式 (4)
- jstl (2)
- SSL (3)
- POI (1)
- 网络编程 (1)
- 算法 (2)
- xml (4)
- 加密解密 (1)
- IO (7)
- jetty (2)
- 存储过程 (1)
- SQL Server (1)
- MongoDB (1)
- mybatis (1)
- ETL (1)
- Zookeeper (1)
- Hadoop (5)
- Redis (1)
- spring cloud (1)
最新评论
-
ron.luo:
牛逼,正解!
maven设定项目编码 -
lichaoqun:
java.sql.SQLException: Can't call commit when autocommit=true -
Xujian0000abcd:
Thanks...
Cannot proxy target class because CGLIB2 is not available. Add CGLIB to the clas -
renyuan2ni:
[i][b][u]引用[list]
[*][img][flas ...
Manual close is not allowed over a Spring managed SqlSession -
851228082:
宋建勇 写道851228082 写道<!-- 文件拷贝时 ...
maven设定项目编码
问:什么是NULL?
答:在我们不知道具体有什么数据的时候,也即未知,可以用NULL,
我们称它为空,ORACLE中,含有空值的表列长度为零。
ORACLE允许任何一种数据类型的字段为空,除了以下两种情况:
1、主键字段(primary key),
2、定义时已经加了NOT NULL限制条件的字段
说明:
1、等价于没有任何值、是未知数。
2、NULL与0、空字符串、空格都不同。
3、对空值做加、减、乘、除等运算操作,结果仍为空。
4、NULL的处理使用NVL函数。
5、比较时使用关键字用“is null”和“is not null”。
6、空值不能被索引,所以查询时有些符合条件的数据可能查不出来,
count(*)中,用nvl(列名,0)处理后再查。
7、排序时比其他数据都大(索引默认是降序排列,小→大),
所以NULL值总是排在最后。
使用方法:
没有查到记录
没有查到记录
---------
1
---------
1
对空值做加、减、乘、除等运算操作,结果仍为空。
注:这个记录就是SQL语句中的那个null
设置某些列为空值
month char(6) --月份
sellnumber(10,2) --月销售金额
------ ---------
200001 1000
200002 1100
200003 1200
200004 1300
200005 1400
200006 1500
200007 1600
200101 1100
200202 1200
200301 1300
200008 1000
查询到11记录.
结果说明:
查询结果说明此SQL语句查询不出列值为NULL的字段
此时需对字段为NULL的情况另外处理。
MONTH SELL
------ ---------
200001 1000
200002 1100
200003 1200
200004 1300
200005 1400
200006 1500
200007 1600
200101 1100
200202 1200
200301 1300
200008 1000
200009
查询到12记录.
Oracle的空值就是这么的用法,我们最好熟悉它的约定,以防查出的结果不正确
引自:http://www.qqread.com/oracle/b782887105.html
答:在我们不知道具体有什么数据的时候,也即未知,可以用NULL,
我们称它为空,ORACLE中,含有空值的表列长度为零。
ORACLE允许任何一种数据类型的字段为空,除了以下两种情况:
1、主键字段(primary key),
2、定义时已经加了NOT NULL限制条件的字段
说明:
1、等价于没有任何值、是未知数。
2、NULL与0、空字符串、空格都不同。
3、对空值做加、减、乘、除等运算操作,结果仍为空。
4、NULL的处理使用NVL函数。
5、比较时使用关键字用“is null”和“is not null”。
6、空值不能被索引,所以查询时有些符合条件的数据可能查不出来,
count(*)中,用nvl(列名,0)处理后再查。
7、排序时比其他数据都大(索引默认是降序排列,小→大),
所以NULL值总是排在最后。
使用方法:
SQL> select 1 from dual where null=null;
没有查到记录
SQL> select 1 from dual where null='';没有查到记录
SQL> select 1 from dual where ''='';
没有查到记录
SQL> select 1 from dual where null is null;1
---------
1
SQL> select 1 from dual where nvl(null,0)=nvl(null,0);1
---------
1
对空值做加、减、乘、除等运算操作,结果仍为空。
SQL> select 1+null from dual; SQL> select 1-null from dual; SQL> select 1*null from dual; SQL> select 1/null from dual;查询到一个记录.
注:这个记录就是SQL语句中的那个null
设置某些列为空值
uPDAte table1 set 列1=NULL where 列1 is not null;现有一个商品销售表sale,表结构为:
month char(6) --月份
sellnumber(10,2) --月销售金额
create table sale (month char(6),sell number); insert into sale values('200001',1000); insert into sale values('200002',1100); insert into sale values('200003',1200); insert into sale values('200004',1300); insert into sale values('200005',1400); insert into sale values('200006',1500); insert into sale values('200007',1600); insert into sale values('200101',1100); insert into sale values('200202',1200); insert into sale values('200301',1300); insert into sale values('200008',1000); insert into sale(month) values('200009');(注意:这条记录的sell值为空)
commit;共输入12条记录
SQL> select * from sale where sell like '%';MONTH SELL
------ ---------
200001 1000
200002 1100
200003 1200
200004 1300
200005 1400
200006 1500
200007 1600
200101 1100
200202 1200
200301 1300
200008 1000
查询到11记录.
结果说明:
查询结果说明此SQL语句查询不出列值为NULL的字段
此时需对字段为NULL的情况另外处理。
SQL> select * from sale where sell like '%' or sell is null; SQL> select * from sale where nvl(sell,0) like '%';
MONTH SELL
------ ---------
200001 1000
200002 1100
200003 1200
200004 1300
200005 1400
200006 1500
200007 1600
200101 1100
200202 1200
200301 1300
200008 1000
200009
查询到12记录.
Oracle的空值就是这么的用法,我们最好熟悉它的约定,以防查出的结果不正确
引自:http://www.qqread.com/oracle/b782887105.html
发表评论
-
ORA-12505, TNS:listener does not currently know of SID given in connect descript
2017-05-11 18:10 1360数据对接时需要连接对方的Oracle数据库,但程序在运行时出错 ... -
java.sql.SQLException: 违反协议: [12]
2014-12-04 13:40 9279表名:V_WJW_IPT_ADMISSIONNOT ... -
oracle收集
2014-08-28 14:04 729sql与oracle中有关case和decode的用法(行转列 ... -
Linux中启动Oracle
2014-07-28 11:33 841一、用oracle用户登录linux系统并执行命令:lsnrc ... -
表空间自动扩展设置
2014-07-19 21:28 1373报错信息: 解决步骤: 1、以管理员的权限登录后执行如下语句 ... -
SQL优化之over的使用
2013-08-29 21:26 1275select t.grade, t.losal from sa ... -
Oracle中Union与Union All的区别
2013-01-31 11:16 1316http://weich-javadeveloper.itey ... -
PLSQL Developer保存用户和密码、执行当前SQL语句
2013-01-14 18:12 2207保存用户: Tools-->Preferences--& ... -
oracle 归档数据查询(分区查询)
2013-01-10 13:01 1501查询201212月份数据记录的SQL如下: SELECT CO ... -
oracle之SQL语句查询某个表所占物理空间大小
2013-01-09 13:38 1625select bytes B, bytes/1024 KB, ... -
Oracle同义词创建及其作用
2012-11-21 16:47 2283Oracle的同义词(synonyms ... -
Oracle解锁用户、新建用户、角色,授权,建表空间
2012-11-16 11:52 1067oracle数据库的权限系统分为系统权限与对象权限。 ... -
ORA-12514 : TNS:监听程序当前无法识别连接描述符中请求的服务
2012-11-05 14:13 1850一、找到监听文件,添加红色部分代码即可,如下: # list ... -
oracle对某个表增(改)字段的sql语句写法
2012-10-26 10:29 1300alter table TAB_SMS_BLACKLI ... -
安装oracle后电脑启动慢的解决办法
2012-10-08 16:55 1456一、进入注册表-services.msc 二、编辑txt文档 ... -
用SQLPLUS远程登录数据库
2012-09-29 09:17 2864首先在tnsnames.ora文件中添加远程访问路径(红色部分 ... -
完美卸载oracle数据库的方法
2012-09-28 14:08 930http://oracle.chinaitlab.com/PL ... -
Oracle高级查询之GROUP BY
2012-09-26 14:05 982引自:http://blog.csdn.net/ayou200 ... -
创建触发器,以便为t_forum表生成主键
2012-08-28 11:19 1551首先创建序列 create sequence seq_foru ... -
ora-01031 权限不足 database links
2011-03-28 11:14 2901grant create database link to s ...
相关推荐
在我们不知道具体有什么数据的时候,也即未知,可以用NULL,我们称它为空,ORACLE中,含有空值的表列长度为零
### Oracle中的NULL知识点详解 #### 一、NULL基础概念与特性 在Oracle数据库中,`NULL`是一个特殊值,表示未知或未定义的状态。它既不是数字也不是字符,因此不能与其他任何类型的值进行比较。在SQL操作中,NULL的...
Oracle中job的使用详解 Oracle 中的 Job 是一个非常强大且灵活的功能,它允许开发者在数据库中执行计划任务,提高数据库的自动化程度和效率。那么,什么是 Oracle 中的 Job 呢? Oracle 中的 Job 是一个计划任务,...
### ORACLE_PROFILE的使用详解 #### 一、概述与目的 在Oracle数据库中,`PROFILE`是一种非常重要的机制,它可以用来控制和管理用户对数据库资源的使用情况。通过设置不同的资源限制,管理员能够确保数据库资源得到...
### ORACLE-TNS协议分析详解 #### 一、TNS介绍 TNS(Transparent Network Substrate)协议是Oracle数据库系统中用于实现客户端与服务端之间通信的重要协议之一。该协议支持多种传输方式,包括TCP/IP协议、SSL加密...
本资源总结了 Oracle 数据库中 SQL 语句的详解大全,涵盖了 SELECT 查询、条件查询、运算符、空值处理、列别名、去重复行等多方面的知识点。 一、SELECT 查询 * 基本语法:SELECT 列名 > FROM 表名 > * 查询所有列...
### 个人经验总结:Oracle数据库SCN号详解 #### 一、引言 在Oracle数据库管理与维护过程中,了解SCN(System Change Number)的概念及其作用至关重要。SCN是Oracle数据库内部用于跟踪数据库状态变化的一个重要机制,...
### Oracle 分区表详解 #### 一、Oracle 分区简介 Oracle 的分区技术是一种用于管理和优化超大型表和索引的有效手段。通过将一个大型的表或者索引分割成多个较小且可管理的部分,分区技术能够显著提升数据库的性能...
### Oracle中的SUBSTR函数详解 在Oracle数据库中,`SUBSTR`函数是一个非常重要的字符串处理函数,用于从指定的字符串中提取子串。该函数在实际应用中极为广泛,能够帮助用户灵活地处理数据,满足各种业务需求。下面...
### Oracle数据库字段类型详解 #### 字符串类型 **Char** `CHAR` 数据类型用于存储固定长度的字符值。它可以包含1至2000个字符。如果没有明确规定长度,默认长度为1。当向`CHAR` 类型的字段赋值时,如果实际值...
Oracle LOB 详解涵盖了 LOB 的基本概念、创建、存储、维护等方面,旨在帮助开发者和数据库管理员更好地理解和使用 LOB。 一、官方说明 Oracle 官方文档中提供了关于 LOB 的详细说明,包括 LOB 的存储、创建、维护...
null 2 2 、 如果某个约束只作用单独的字段,即可以在列级定义约束;也可以在表 级定义约束。但是如果某个约束作用于多个字段,那必须在表级定义约 束,比如复合主键型就必须在表级定义约束。 3 3 、 在定义约束...
Oracle 数据控制语句详解 在 Oracle 数据库管理系统中,SQL 语言主要分为四大部分:数据查询语言(DQL)、数据操纵语言(DML)、数据定义语言(DDL)以及数据控制语言(DCL)。本篇文章主要关注的是 DML 和 DCL ...
- 描述:控制是否在输出中使用制表符来对齐列。 40. **TIME** - 默认值:OFF - 可选值:ON - 描述:控制是否显示SQL命令的执行时间。 41. **TIMING** - 默认值:OFF - 可选值:ON - 描述:控制是否...
Oracle 数据库中的表分区是一种强大的工具,它可以显著提高大型表的性能和管理效率。通过合理的分区设计,可以实现数据的快速访问、高效管理和灵活的维护操作。根据实际应用场景选择合适的分区类型(范围分区、列表...
- 处理`NULL`值时,要注意`NULL`与任何值比较都为`FALSE`,使用`IS NULL`或`IS NOT NULL`进行判断。 - Hibernate调用Oracle存储过程需要配置JDBC驱动,并使用`CallableStatement`来执行存储过程。 4. Java调用...
### Oracle数据库SQL语句详解——SELECT查询与条件查询 #### 第一章 SELECT查询 ##### 1.1 基本语法 SELECT语句是Oracle数据库中最常用的查询数据的方法之一,其基本语法结构如下: ```sql SELECT <列名> FROM ...
- 掌握如何在查询中使用表达式和运算符。 - 了解如何处理空值。 - 学习如何给查询结果中的字段起别名。 - 熟悉如何进行列的连接操作。 **SELECT查询基本语法:** ```sql SELECT <列名> FROM <表名>; ``` **示例:...