首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在WHERE子句中使用COUNT()

在WHERE子句中使用COUNT()
EN

Stack Overflow用户
提问于 2012-11-10 00:26:29
回答 3查看 47.1K关注 0票数 1

我有以下SQL语句:

代码语言:javascript
运行
复制
SELECT     C.LINKED_TABLE_ID AS CLIENT_DIWOR, I.STATUS AS AML_STATUS, dbo.CLIENT_MASTER.CLIENTCODE
FROM         AML_INFORMATION AS I INNER JOIN
                dbo.COMM_ENTRY AS C ON C.NAME_ID = I.CONTACT_ID AND C.TABLE_ID = 'C' AND C.PRIMARY_FLAG = 'Y' INNER JOIN
                dbo.CLIENT_MASTER ON C.LINKED_TABLE_ID = dbo.CLIENT_MASTER.DIWOR
WHERE I.CONTACT_ID = 234
    AND I.[STATUS] = 'CC'
    AND (CLIENT_MASTER.DIWOR = I.CONTACT_ID)
    AND (CLIENT_MASTER.POSTING_STATUS <> '')
    AND ((SELECT COUNT(CONTACT_ID) FROM AML_ID_DOCUMENT GROUP BY CONTACT_ID HAVING CONTACT_ID = 234) >1)

如果我运行它,它将返回0条记录,但是,如果我删除最后一条AND语句AND ((SELECT COUNT(CONTACT_ID) FROM AML_ID_DOCUMENT GROUP BY CONTACT_ID HAVING CONTACT_ID = 234) >1),它将返回我期望的记录。

可以以这种方式使用COUNT()吗?顺便说一下,本例中的COUNT()返回2条记录,如果我将它包含在SELECT语句中,也会返回0条记录。

有谁能给我指个方向吗?

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-10 00:40:16

您显示的脚本不应返回任何内容...你拥有的部分可能看起来是这样的

代码语言:javascript
运行
复制
   and (Select Count(*) from AML_ID_DOCUMENT  where CONTACT_ID =I.CONTACT_ID)>1

尽管它应该按原样工作...

票数 9
EN

Stack Overflow用户

发布于 2012-11-10 00:38:14

最后的部分不应该是这样的吗:

代码语言:javascript
运行
复制
AND EXISTS (SELECT CONTACT_ID FROM AML_ID_DOCUMENT
      WHERE CONTACT_ID = 234
      GROUP BY CONTACT_ID
      HAVING COUNT(CONTACT_ID)>1)
票数 6
EN

Stack Overflow用户

发布于 2017-09-05 20:45:53

尝试此查询:

代码语言:javascript
运行
复制
select count(portfolio_id) as porfolioCount 
from engineering_module_tracker_v2 
where r0_approval__category='Cat I' & 'Cat II';

Cat的意思是分类。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13311977

复制
相关文章

相似问题

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