问题描述
我有一个带有两个可为空的位标志列的查询,我想将结果集中的那些合并为单个标志:
COALESCE(flagA,flagB) as FlagAB
但是,对于列值null,false
,结果是48
,而不是false
,这是非常意外的。游乐场示例(也在db fiddle上):
create table Flags (flagA bit null,flagB bit null);
insert into Flags (flagA,flagB) values (null,false);
select *,COALESCE(flagA,flagB) as FlagAB from Flags;
输出:
| FlagA | FlagB | FlagAB |
--------------------------
| null | 0 | 48 |
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)