还有一个是
在a表中选择所有name字段为 ''(就是什么也没有,但不为空null的) 的语句怎么写?
26 个解决方案
#1
oracle认为''就是null。不信你试试。
#2
name=''
#3
这么简单的问题没人知道吗?
#4
where fieldname is null
#5
是‘ ’呢,还是NULL呢?NULL 就是‘’吧
#6
什么也没有就是null,你输入进去字符串或数字,再删除还是用null表示
select * from a where name is null
select * from a where name is null
#7
那么Oracle中没有 ''这个吗? 只有Null?
MSsql2000中就有''也有null的啊??
MSsql2000中就有''也有null的啊??
#8
在oracle里
''就是 NULL
NULL 就是 ''
判断
select name from table where name is NULL;
select name from table where name is NOT NULL;
''就是 NULL
NULL 就是 ''
判断
select name from table where name is NULL;
select name from table where name is NOT NULL;
#9
ORACLE
里面 '' 和 NULL是一回事
在MySQL和SQL Server(也就是MSSQL)里面, ''和NULL不一样的
里面 '' 和 NULL是一回事
在MySQL和SQL Server(也就是MSSQL)里面, ''和NULL不一样的
#10
明白了。今天又学到了。谢
#11
is null
#12
用insert into tablename(fieldname1) values('')
再用select * from tablename where fieldname1 = ''这样是查不出刚刚插进去的数据的,
要用select * from tablename where fieldname1 is null
^_^
再用select * from tablename where fieldname1 = ''这样是查不出刚刚插进去的数据的,
要用select * from tablename where fieldname1 is null
^_^
#13
null 和 '' 是不一样的,也许高版本的ORACLE认为是一样的吧
#14
null 和 '' 不一样,除非是字符型
#15
楼上的兄弟/姐妹
能不能举个例子^_^
能不能举个例子^_^
#16
nvl(fieldname,0)
#17
SQL> select nvl('',0) from dual;
N
-
0
SQL> select nvl(NULL,0) from dual;
NVL(NULL,0)
-----------
0
有什么区别吗?
N
-
0
SQL> select nvl(NULL,0) from dual;
NVL(NULL,0)
-----------
0
有什么区别吗?
#18
一直认为NULL和''是不一样的,最好是
where ...and (c1='' or c1 is null) and ......
where ...and (c1='' or c1 is null) and ......
#19
if fieldname='' then ..和if fieldname=' ' then ..不一样,后者表示是个空格,前者表示是空;
#20
在oracle中. null 不等于 null的.null也不等于''
select * from table_test where 字段=null 将得不到任何数据.,
select * from table_test where 字段 is null <---正确.
select * from table_test where 字段='' <--也得不到正确的结果
select * from table_test where 字段=null 将得不到任何数据.,
select * from table_test where 字段 is null <---正确.
select * from table_test where 字段='' <--也得不到正确的结果
#21
select * from table_test where 字段=''
这样不行的,得不到正确结果
还是要使用is null
这样不行的,得不到正确结果
还是要使用is null
#22
to dinya2003(OK)
如你所说
那我现在要求往表里插入值为 ''的记录,并且把值为 ''的记录select出来。。
'' 就是 NULL
但是不能这样查 where field='' 要写成 is null 的形式。。
“select * from table_test where 字段=null 将得不到任何数据.,”
=================================
这是概念问题了,对于NULL值,oracle语法规定必须是 IS NULL来判断,而不是=NULL
写成=NULL当然不对了
如你所说
那我现在要求往表里插入值为 ''的记录,并且把值为 ''的记录select出来。。
'' 就是 NULL
但是不能这样查 where field='' 要写成 is null 的形式。。
“select * from table_test where 字段=null 将得不到任何数据.,”
=================================
这是概念问题了,对于NULL值,oracle语法规定必须是 IS NULL来判断,而不是=NULL
写成=NULL当然不对了
#23
明白了。
#24
name is null
#25
is null;最能体现是否为空
#26
如果字段為char或varchar的時候﹐' '和''﹑null是不同的
#1
oracle认为''就是null。不信你试试。
#2
name=''
#3
这么简单的问题没人知道吗?
#4
where fieldname is null
#5
是‘ ’呢,还是NULL呢?NULL 就是‘’吧
#6
什么也没有就是null,你输入进去字符串或数字,再删除还是用null表示
select * from a where name is null
select * from a where name is null
#7
那么Oracle中没有 ''这个吗? 只有Null?
MSsql2000中就有''也有null的啊??
MSsql2000中就有''也有null的啊??
#8
在oracle里
''就是 NULL
NULL 就是 ''
判断
select name from table where name is NULL;
select name from table where name is NOT NULL;
''就是 NULL
NULL 就是 ''
判断
select name from table where name is NULL;
select name from table where name is NOT NULL;
#9
ORACLE
里面 '' 和 NULL是一回事
在MySQL和SQL Server(也就是MSSQL)里面, ''和NULL不一样的
里面 '' 和 NULL是一回事
在MySQL和SQL Server(也就是MSSQL)里面, ''和NULL不一样的
#10
明白了。今天又学到了。谢
#11
is null
#12
用insert into tablename(fieldname1) values('')
再用select * from tablename where fieldname1 = ''这样是查不出刚刚插进去的数据的,
要用select * from tablename where fieldname1 is null
^_^
再用select * from tablename where fieldname1 = ''这样是查不出刚刚插进去的数据的,
要用select * from tablename where fieldname1 is null
^_^
#13
null 和 '' 是不一样的,也许高版本的ORACLE认为是一样的吧
#14
null 和 '' 不一样,除非是字符型
#15
楼上的兄弟/姐妹
能不能举个例子^_^
能不能举个例子^_^
#16
nvl(fieldname,0)
#17
SQL> select nvl('',0) from dual;
N
-
0
SQL> select nvl(NULL,0) from dual;
NVL(NULL,0)
-----------
0
有什么区别吗?
N
-
0
SQL> select nvl(NULL,0) from dual;
NVL(NULL,0)
-----------
0
有什么区别吗?
#18
一直认为NULL和''是不一样的,最好是
where ...and (c1='' or c1 is null) and ......
where ...and (c1='' or c1 is null) and ......
#19
if fieldname='' then ..和if fieldname=' ' then ..不一样,后者表示是个空格,前者表示是空;
#20
在oracle中. null 不等于 null的.null也不等于''
select * from table_test where 字段=null 将得不到任何数据.,
select * from table_test where 字段 is null <---正确.
select * from table_test where 字段='' <--也得不到正确的结果
select * from table_test where 字段=null 将得不到任何数据.,
select * from table_test where 字段 is null <---正确.
select * from table_test where 字段='' <--也得不到正确的结果
#21
select * from table_test where 字段=''
这样不行的,得不到正确结果
还是要使用is null
这样不行的,得不到正确结果
还是要使用is null
#22
to dinya2003(OK)
如你所说
那我现在要求往表里插入值为 ''的记录,并且把值为 ''的记录select出来。。
'' 就是 NULL
但是不能这样查 where field='' 要写成 is null 的形式。。
“select * from table_test where 字段=null 将得不到任何数据.,”
=================================
这是概念问题了,对于NULL值,oracle语法规定必须是 IS NULL来判断,而不是=NULL
写成=NULL当然不对了
如你所说
那我现在要求往表里插入值为 ''的记录,并且把值为 ''的记录select出来。。
'' 就是 NULL
但是不能这样查 where field='' 要写成 is null 的形式。。
“select * from table_test where 字段=null 将得不到任何数据.,”
=================================
这是概念问题了,对于NULL值,oracle语法规定必须是 IS NULL来判断,而不是=NULL
写成=NULL当然不对了
#23
明白了。
#24
name is null
#25
is null;最能体现是否为空
#26
如果字段為char或varchar的時候﹐' '和''﹑null是不同的