查询一个字段,在查询结果中如何去空? 查出来的字段有些是NULL,现需要将为NULL的数据排除,
除了在查询条件中多加一个“IS NOT NULL”,
请问还有什么更简单的方法?
SELECT [DataSourceID]
FROM [PageControl]
WHERE PageID = 'bec1f1b2-f2a5-45ff-a2cf-48f660b37b3a'
AND DataSourceID IS NOT NULL
去NULL
分享到:更多
------解决方案-------------------- 也可以这样写,
set ansi_nulls off
SELECT [DataSourceID]
FROM [PageControl]
WHERE PageID='bec1f1b2-f2a5-45ff-a2cf-48f660b37b3a'
AND DataSourceID!=null
------解决方案-------------------- 如果你希望方便一点,就这样:
--这样设置后,null也可以用来比较,否则只能用is not null
set ansi_nulls off
SELECT [DataSourceID]
FROM [PageControl]
WHERE PageID='bec1f1b2-f2a5-45ff-a2cf-48f660b37b3a'
AND DataSourceID<>null
------解决方案-------------------- isnull(字段,'')<>''
或者
isnull(字段,-1)<>-1 ------解决方案-------------------- 如果要改,当然可以用isnull()
比如
update tb
set a=isnull(a,'默认值')
where a is null
------解决方案-------------------- 这个也可以的,也可以替换的。select isnull(字段名,替换值) from A ------解决方案--------------------