SQL 月数

SQL No of count month wise

我有如下数据集,

数据基本上是年月 YYYYMM,我需要计算月数,例如 202001 出现了 3 次,因此计数应该是 11 月 3 日(期望的输出在下面共享)

我无法开始显示所需的输出,非常感谢您的帮助。 (不允许在服务器中创建临时表)

请查找 link 样本数据 link

非常感谢您的帮助。

您可以使用 to_date() 将您的号码转换为正确的日期,然后按该日期分组:

select to_date(due_date_key::text, 'yyyymm') as due_date,
       count(*)
from t
group by due_date;       

“due_date”列是正确的日期,您可以使用 to_char() 函数对其进行不同的格式化:

select to_char(due_date, 'yyyy') as year,
       to_char(due_date, 'Mon') as output, 
       count
from (
  select to_date(due_date_key::text, 'yyyymm') as due_date,
         count(*) 
  from t
  group by due_date
) t
order by due_date;  

Online example