Oracle的NVL()函数和MySQL中的IfNull()函数
MS SQL 中的IsNull()函数:
IsNull ( check_expression , replacement_expression )
check_expression: 可以是任何类型,将要检查的表达式 不为空,返回它
replacement_expression: 类型必须和check_expression相同,check_expression为null,返回它
这个函数的作用就是:判断check_expression是否为空,为空就返回replacement_expression,不为空则返回check_expression
eg:
SELECT IsNull(null,1) 返回1
SELECT IsNull(null,’男') 返回男
SELECT IsNull(‘’,'男') 注意返回的不是男哦
MS Sql中的 IsNull( )函数相当于Oracle中的 NVL( )函数:
NVL(EXP1,EXP2),函数返回exp1和exp2 中第一个不为null的值。
如果exp1为空就返回exp2,否则返回exp1。
相当于Mysql中的IfNull()函数:
应用场景:比如一张表:Products ,该表取自 http://www.w3schools.com/SQL/sql_isnull.asp
P_Id
ProductName
UnitPrice
UnitsInStock
UnitsOnOrder
1
Jarlsberg
10.45
16
15
2
Mascarpone
32.56
23
3
Gorgonzola
15.67
9
20
假设UnitsOnOrder这一列是可以为空的,可能含有空值,那么执行
SELECT ProductName,UnitPrice*(UnitsInStock+UnitsOnOrder) from Products 有可能会出错
因为UnitsOnOrder这一列为空的时候,运算的结果就是空
mssql的isnull()函数可以指定处理空值的方式:
改为下面得就可以了SELECT ProductName,UnitPrice*(UnitsInStock+isnull(UnitsOnOrder,0)) from Products
isnull(unitsOnOrder,0) unitsOnOrder为空的时候返回0
COALESCE() function
COALESCE ( expression [ ,...n ] )
相当于:
COALESCE(expression1,...n) 的功能与以下 CASE 表达式相同:
CASE
WHEN (expression1 IS NOT NULL) THEN expression1
WHEN (expression2 IS NOT NULL) THEN expression2
...
ELSE expressionN
END
相关文档:
什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name Type Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y &nb ......
安装…………
引用的http://mamaoyuan625.javaeye.com/blog/617502
安装oracle 10g后,登录 出现
the account is locked
这个错误几乎所有的初学者都会遇到.
其实解决办法非常简单.
请输入用户名: SYSTEM
输入口令:admin(注意,这个密码是你在安装oracle时第一步设置的)
然后系统会显 ......
在Oracle RAC环境中,系统性能会受到影响,主要集中在Block在instance之间的传输,尽管oracle 10g 中采用了Cache Fusion来改善以前重disk中读取数据。其中的一个部分就是关于oracle sequence的性能问题
下面是关于sequence 的cache和order对rac 性能的影响,从测试中看到增大cache和采用non-ordered的sequence性能受到的影 ......
oracle中pro*c的学习
一 Pro*C 程序概述:
1.什么是Pro*C程序
在ORACLE数据库管理和系统中, 有三种访问数据库的方法;
(1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库;
(2) 用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*froms,QL*Reportwriter,SQL*Menu等;
(3) 利用在 ......
mysqldump -u用户名 -p密码 数据库名 >dump文件的路径和名称
mysql> source dump.sql
There are three general ways to invoke mysqldump:
shell> mysqldump [options] db_name [tbl_name ...]
shell> mysqldump [options] --databases db_name ...
shell> mysqldump [options] --all-databases
......