字段为char型,如何再sql where 里判断他为空, isnot null 好像不行
字段为char型,如何再sql where 里判断他为空, isnot null 好像不行 --------------------编程问答-------------------- 为空是is null吧 --------------------编程问答-------------------- is null 也不行
--------------------编程问答-------------------- datalength(字段名称)>0
--------------------编程问答-------------------- 字段='' or len(字段)=0 --------------------编程问答--------------------
SELECT * FROM tb WEHRE field IS NOT NULL--------------------编程问答-------------------- where敲错. --------------------编程问答-------------------- len(字段) --------------------编程问答-------------------- 我自己是这样做的
replace(字段,' ') is not null --------------------编程问答-------------------- 上面的写法是画蛇添足.
如果字段本身为空值即null,就不会有空格出现,何必replace一次.
况且,当某个操作数为null时,除了一些消除null的函数(比如isnull,nullif,count(聚合)等等)外,其它的运算结果(算术运算,字串相连,逻辑运算)仍为null, replace也是没有效的.
再次,replace语法错误.
我看你的写法,现在想知道你是想知道一个字段是不是null,还是想知道它是写了个空字串,即''.
比如:
declare @s varchar(10)
select @s /*没赋值,当然是null*/
set @s=''
select @s /*初始化过了,给的空字串,显示''*/ --------------------编程问答-------------------- SELECT * FROM tb WEHRE field <> ''
char 类型
如果没有值,又允许null,则为 null ;
如果有值,但为空值 ,则为 ‘’ --------------------编程问答-------------------- SELECT * FROM tb WEHRE field <> ''
char 类型
如果没有值,又允许null,则为 null
如果有值,但为空值 ,则为 '' --------------------编程问答-------------------- 建议使用VARCHAR,节省空间。 --------------------编程问答--------------------
isnull(字段,'')=''
补充:.NET技术 , ASP.NET