求一将表中数据连接后返回一个字符串的sql(在线等)
大家好!问题如下: 
 有一个表table1,表有几列(title   varchar,   time   DateTime,Place   varchar,dsc   varchar).   表数据例如: 
 客户拜访      2007-1-1      中山北路375      重要客户拜访1 
 客户拜访      2007-1-1      中山北路376      重要客户拜访2 
 客户拜访      2007-1-1      中山北路377      重要客户拜访3   
 要求将表中数据连接后返回一个字符串,记录分隔符: <@>       字段分隔符: <|>    
 客户拜访 <|> 2007-1-1 <|> 中山北路375 <|> 重要客户拜访1 <@> 客户拜访 <|> 2007-1-1 <|> 中山北路376 <|> 重要客户拜访2 <@> 客户拜访 <|> 2007-1-1 <|> 中山北路377 <|> 重要客户拜访3   
 在线等,谢谢啦!
------解决方案----------------------创建测试环境 
 create table table1(title varchar(20), time DateTime,Place varchar(20),dsc varchar(20))   
 --插入测试数据 
 insert table1(title,time,Place,dsc) 
 select  '客户拜访 ', '2007-1-1 ', '中山北路375 ', '重要客户拜访1 ' union all 
 select  '客户拜访 ', '2007-1-1 ', '中山北路376 ', '重要客户拜访2 ' union all 
 select  '客户拜访 ', '2007-1-1 ', '中山北路377 ', '重要客户拜访3 '   
 --求解过程   
 declare @str varchar(8000) set @str =  ' '   
 select @str = @str + title + ' <|>  '+ convert(varchar(10),time,120)+ ' <|>  '+Place + ' <|>  '+dsc + ' <@>  ' from table1 
 select @str = left(@str,len(@str)-3) 
 select @str   
 --删除测试环境 
 drop table table1   
 /*--测试结果 
 客户拜访 <|> 2007-01-01 00:00:00 <|> 中山北路375 <|> 重要客户拜访1 <@> 客户拜访 <|> 2007-01-01 00:00:00 <|> 中山北路376 <|> 重要客户拜访2 <@> 客户拜访 <|> 2007-01-01 00:00:00 <|> 中山北路377 <|> 重要客户拜访3   
 (所影响的行数为 1 行) 
 */