首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Oracle SQL -将选择的计数(*)转换为0或1

Oracle SQL -将选择的计数(*)转换为0或1
EN

Stack Overflow用户
提问于 2015-10-23 19:35:35
回答 4查看 1.8K关注 0票数 2

我使用Oracle,并希望将选择计数的结果转换为“二进制”0/1值.0=0.非零= 1。根据我在网上看到的,在MS中,您可以将其转换为“位”,但Oracle似乎不支持这一点。

下面是我的简单示例查询(真正的查询要复杂得多)。我希望MATCH_EXISTS总是0或1,这有可能吗?

代码语言:javascript
复制
select count(*) as MATCH_EXISTS 
from MY_TABLE 
where MY_COLUMN is not null;
EN

Stack Overflow用户

发布于 2015-10-23 19:47:46

不要做count()。为了提高性能,请使用exists

代码语言:javascript
复制
select (case when exists (select 1 as MATCH_EXISTS 
                          from MY_TABLE 
                          where MY_COLUMN is not null
                         )
              then 1 else 0
        end)
from dual;

这可以大大加快速度。

票数 1
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33310150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档