暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 一个sql查询,如果一行有电子邮件,另一行没有电子邮件,但我只有一个有效数字,则提取所有记录

askTom 2016-03-29
85

问题描述


一个sql查询,如果一个群集(即22 )有电子邮件,而另一个群集没有电子邮件,但我有一个有效数字,则提取所有记录
大约有上百万张唱片,我必须根据标准把所有的唱片取来

例如:

群集ID last_NAME first_NAME电子邮件电话

22个肯ken@a.com 012

22甲肯012

27b John john@b.com 345

27b约翰345





专家解答

我不知道你说的“有一个有效数字”是什么意思?还是只有一个不同的?

总之...也许像这样的东西?

select *
from (
select t.*,
  count(email) over ( partition by cluster_id ) as email_count,
  count(*) over ( partition by cluster_id ) as cluster_count
from my_table t
)
where email_count > 0   -- at least 1 non-null email
and cluster_count > email_count;  -- at least 1 null



「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论