我想出了一段代码,以显示每列的所有不同值,并计算每列的记录数.我希望代码遍历所有列.
这是我到目前为止所做的...我是SQL的新手所以忍受noobness :)
硬编码:
select [Sales Manager], count(*)
from [BT].[dbo].[test]
group by [Sales Manager]
order by 2 desc
Run Code Online (Sandbox Code Playgroud)
尝试动态SQL:
Declare @sql varchar(max),
@column as varchar(255)
set @column = '[Sales Manager]'
set @sql = 'select ' + @column + ',count(*) from [BT].[dbo].[test] group by ' + @column + 'order by 2 desc'
exec (@sql)
Run Code Online (Sandbox Code Playgroud)
这两个都很好.如何让它循环遍历所有列?我不介意我是否必须对列名进行硬编码,并且通过在每个列中为@column进行子搜索来实现.
这有意义吗?
谢谢大家!