你的要求很特殊。
如果用户A有3个星期,而用户B有20个星期,你真生成这样的?
用户 1星期 2星期 3星期 4星期...
A 1 1 1 NULL
B 2 2 2 2 ...
应该是这样的
用户 星期 次数
A 1 1
A 2 1
A 3 1
B 1 2
B 2 2
B 3 2
B 4 2
.
.
.
如果这样的话
应该是
select userId,f(OperationDateTime),count(*) as cnt
from table_test
group by userId,f(OperationDateTime)
order by 1,2
我现在没有sql的环境,你自己试试
上面的f(OperationDateTime)代表一个函数,sql里面应该可以取得一个日期在本年度的星期数的