这是我在SQL Server 2012中针对不同表/列(@names
/ lastname)的常用内容:
declare @names as table (lastname varchar(99));
insert into @names
select 'adam'
union
select 'eve'
union
select 'apple';
declare @v varchar(max) ='';
select @v = @v + ',' + lastname from @names;
select substring(@v, 2, len(@v)) --adam,apple,eve
将上述内容封装到MAGIC函数或MAGIC过程中的最佳方法是什么
表/列可以参数化为输入,返回字符串'adam,apple,eve'
?
------------------------------------编辑
澄清::重点是通过传递表名称和逻辑来封装逻辑。某个实体的列名称,它将从现有表/列返回“adam,apple,eve”字符串。
(现在,如果使用上面的逻辑或使用xmlpath进行字符串连接,这是不重要的);如果将表/列名称传递给存储过程,则需要动态sql,这似乎是一种过度杀伤......