【发布时间】:2021-02-02 17:09:54
【问题描述】:
大家,
我正在尝试形成一个查询来显示特定年份的客户数量。客户表包含一个字段,client_since,所有客户信息,active_client,date_deleted(当客户取消订阅通信时用作标志)。
每条记录的 client_since 显示他们成为客户的年份 (char(4))。 当我按年份查询时,我得到了新客户的记录,但是,我试图形成查询以向我显示客户的数量(新客户和返回客户)。为了争论,所有的客户都回来了。
假设我在 2008 年有 1 个客户,2009 年有 6 个客户签约,2010 年又有 6 个客户签约,2011 年又有 10 个客户签约,依此类推。我需要查询按年份汇总所有客户。
我做到了:
select count (id) as [New Clients],client_since
from tax_clients
where client_since >= 2008
group by client_since
结果是:
new clients
1 2009
8 2010
6 2011
6 2012
11 2013
6 2014
9 2015
17 2016
20 2017
13 2018
26 2019
41 2020
7 2021
因此,计算将添加所有新客户端。
谁能给我一些关于如何构建查询的指导?
谢谢
【问题讨论】:
-
请定义“新”和“返回”?如果客户跳过几年怎么办?样本数据和期望的结果会有所帮助。
-
新客户是第一次使用该服务,而返回是每年返回的客户。如果客户跳过一年,它将被停用,当它返回时,它将被视为新客户。
-
您为什么使用不受支持的软件?
-
这就是我所拥有的。我不做很多数据库的东西,只是基本的。有一天我会升级,但今天,这就是我正在使用的东西..
标签: sql sql-server sql-server-2008 count sum