架构:
SubscriberId NewsletterIdCsv
------------ ---------------
1 48,51,94
2 43,22
3 33,11
4 90,61
我需要获取每行 NewsletterIdCsv 的计数,然后将它们全部相加以获得所有行的总数,对于基本行数,我正在执行以下操作:
SELECT newsletteridcsv, len(newsletteridcsv) - len(replace(newsletteridcsv, ',', '')) +1 IndividualCount
FROM DBTABLE
这给了我结果:
NewsletterIdCsv IndividualCount
------------ ---------------
48,51,94 3
43,22 2
33,11 2
90,61 2
如何获得总计数(在本例中为 9)?
注意:这个表有 500 万条记录,我不认为使用临时表插入计数,然后最后通过临时表行来累积计数是一种优化的方式吗?我也完全反对使用游标来解决效率问题!
获得总数的最佳方法是什么?