PL-SQL ''与null的问题

请教各位大侠个问题在oracle你们试过这样SQL吗?select * from employee where ''=''?有人可能会就说这还用试吗?哈哈,结果是查询没有result,select * from employee where '' is null?这个呢?结果是查询有result,还有select * from employee where name <> 'Z'?前提是我数据里面有一些记录name是null,查询的结果名字不是'Z'的出来了,name是null没有出来,就是这个问题,请大侠们指点一下?ths

where name <> 'Z' 这是因为查询时,<>号只查询比较非空的一部分,对于空的一部分是不做比较的.
oracle中的'',ORACLE是做为NULL看待,NULL这种情况在查询条件中是不能用于=,>,<,<>这一类的判断,只能用IS ,或洒is not 来判断的,所以出现了你上面的说的情况

select * from employee where name is null
name 是null 的记录就查出来了, null 与任何数据做=, > , < , <> 比较结果都是false。

null的比较不可以用关系运算符,只能用 is 或 is not.对于第一个语句中的'',可以把它理解为null

null 与任何数据做=, > , < , <> 比较结果都是false。
''在oracle中被视为null