我必须在网络上的消费者身上找到一个特定的号码。客户建议使用table "abcd"
并确保manufacturer='big_company"
满足。所以我在 Teradata 上运行了以下查询。
select count(*)from(select tel_num, manufacturer from abcd
where manufacturer='big_company'
and tel_num is not null)pqr
该查询运行正常,记录总数为 6 亿条。
客户的另一个问题是,在网络上的消费者中,有多少人选择了特定的服务。我被要求使用表“wxyz”并确保满足 postpaid=1 条件。为了实现这一点,我必须在 tel_num 上创建 abcd 和 wxyz 之间的内部连接。以下是我使用的查询:
select cast (count (*)as bigint) from (select a.tel_num, b.postpaid from
abcd as a inner join wxyz as b on a.tel_num=b.tel_num
where a.manufacturer='big_company'
and b.postpaid=1) xyz
上述查询生成 50 亿条记录。
这看起来很奇怪,因为我使用了内连接,所以第二个查询中的记录数应该少于 6 亿。我只是无法弄清楚我哪里出错了。