空字符串与null"/>
postgresql与Oracle:空字符串与null
空字符串:两个单引号,中间无空格等任何内容在postgresql中,空字符串与null是不同的;而oracle中,空字符串与null等同。测试如下:postgresql中:
postgres=# insert into testnull values(1,'feikong');
INSERT 0 1
postgres=# insert into testnull values(2,null);
INSERT 0 1
postgres=# insert into testnull values(3,'');
INSERT 0 1
postgres=# select * from testnull;id | name
----+---------1 | feikong2 |3 |
(3 rows)postgres=# select * from testnull where name is null; ---只有2为nullid | name
----+------2 |
(1 row)postgres=# select * from testnull where name is not null;id | name
----+---------1 | feikong3 |
(2 rows)Oracle中:
SQL> insert into testnull values(1,'feikong');1 row insertedSQL> insert into testnull values(2,null);1 row insertedSQL> insert into testnull values(3,'');1 row insertedSQL> commit;Commit completeSQL> select * from testnull;ID NAME
---------- ----------1 feikong23SQL> select * from testnull where name is null; --2,3为nullID NAME
---------- ----------23SQL> select * from testnull where name is not null;ID NAME
---------- ----------1 feikong
更多推荐
postgresql与Oracle:空字符串与null
发布评论