超难的查询,请教各位英雄....
有下面的表   table1,里面的数据如下:   
 ID               Company               Employee 
 ________________________________ 
 1                     IBM                        员工1 
 2                     IBM                        员工2 
 3                     IBM                        员工3 
 4                     联想                     员工4 
 5                     戴尔                     员工5 
 6                     戴尔                     员工6 
 7                     联想                     员工7 
 8                     联想                     员工8 
 9                     IBM                        员工9 
 10                  戴尔                     员工10     
 要求,用SQL   查出如下面的结果   
 Company         Employee 
 __________________________________ 
    IBM               员工1,员工2,员工7,员工10 
    戴尔            员工3,员工8,员工9 
    联想            员工4,员工5,员工6     
 可用函数等.   ...   请教各位大虾...   谢谢..   
------解决方案--------------------例:   
 --处理的数据 
 CREATE TABLE tb(col1 varchar(10),col2 int) 
 INSERT tb SELECT  'a ',1 
 UNION ALL SELECT  'a ',2 
 UNION ALL SELECT  'b ',1 
 UNION ALL SELECT  'b ',2 
 UNION ALL SELECT  'b ',3 
 GO   
 --合并处理函数 
 CREATE FUNCTION dbo.f_str(@col1 varchar(10)) 
 RETURNS varchar(100) 
 AS 
 BEGIN 
 	DECLARE @re varchar(100) 
 	SET @re= ' ' 
 	SELECT @re=@re+ ', '+CAST(col2 as varchar) 
 	FROM tb 
 	WHERE col1=@col1 
 	RETURN(STUFF(@re,1,1, ' ')) 
 END 
 GO   
 --调用函数 
 SELECT col1,col2=dbo.f_str(col1) FROM tb GROUP BY col1 
 --删除测试 
 DROP TABLE tb 
 DROP FUNCTION f_str 
 /*--结果 
 col1       col2 
 ---------- ----------- 
 a          1,2 
 b          1,2,3 
 --*/ 
 GO
------解决方案--------------------http://community.csdn.net/Expert/topic/5690/5690492.xml?temp=.1814539