【发布时间】:2021-11-09 00:20:09
【问题描述】:
我有以下问题:我想根据电话号码过滤客户列表。
我的实际输出:
id firstname lastname phonenumber creation date
1 client client 664433 2020/01/02
2 client client 664433 2020/01/02
3 client client 664432 2020/01/02
4 client client 669433 2020/01/02
5 client client 964433 2020/01/02
6 client client 664033 2020/01/02
如您所见,有重复的电话号码。
我想要的输出应该是:
id firstname lastname phonenumber creation date
1 client client 664433 2020/01/02
2 client client 664432 2020/01/02
3 client client 669433 2020/01/02
4 client client 964433 2020/01/02
5 client client 664033 2020/01/02
这是我用来识别这些重复数字并将它们从我的输出中删除的代码:
select
cc.id ,
cc."FirstName",
cc."LastName",
cc."PhoneNumber" as phone_number,
case when cc."PhoneNumber" is not null count(cc."PhoneNumber") else 0,
cc."CreationDate"
from souscritootest.public.clients_crm cc
having count(cc."PhoneNumber") = 1
;
问题是我从 IDE 得到这个反馈:SQL Error [42601]: ERROR: syntax error at or near "count" Position: 128
我想要做的是创建一个列,如果它是重复的,则标记为 1,如果不重复,则标记为 0。
谢谢!
【问题讨论】:
-
我删除了不一致的数据库标签。请仅使用您真正使用的数据库进行标记。
-
您能否提供示例数据和所需的输出,因为您的非工作查询中没有“我想根据他们的电话号码过滤客户列表”
-
为什么不会您希望
(select distinct cc."PhoneNumber" from souscritootest.public.clients_crm cc)产生多个电话号码? -
如果客户有多个电话号码,您希望发生什么?
-
轻松为您提供帮助:minimal reproducible example
标签: mysql sql sql-server