Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 合并具有不同字段的数据_Sql_Sql Server_Tsql - Fatal编程技术网

Sql 合并具有不同字段的数据

Sql 合并具有不同字段的数据,sql,sql-server,tsql,Sql,Sql Server,Tsql,可能重复: 基本上有一些相同的数据和一些不同的字段。我们的客户希望合并这种数据。我在下面展示了它 season_id | service_id | service_name | product_line | service_date 10-12/11 | PIM0768 | Hilton NYC | H | 2012-03-02 10-12/11 | PIM0954 | Hilton NYC | AB1 | 2012-03-02

可能重复:

基本上有一些相同的数据和一些不同的字段。我们的客户希望合并这种数据。我在下面展示了它

season_id | service_id | service_name | product_line | service_date
10-12/11  | PIM0768    | Hilton NYC   | H            | 2012-03-02
10-12/11  | PIM0954    | Hilton NYC   | AB1          | 2012-03-02 


season_id | service_id         | service_name | product_line | service_date
10-12/11  | PIM0768,PIM0954    | Hilton NYC   | H,AB1        | 2012-03-02
我该怎么做

CREATE TABLE #tmp (season_id varchar(10), service_id Varchar(10), service_name varchar(30), product_line varchar(10), service_date datetime)

INSERT INTO #tmp  VALUES ('10-12/11','PIM0768','Hilton NYC','H','20120302')
INSERT INTO #tmp  VALUES ('10-12/11','PIM0954','Hilton NYC','ABC','20120302')

SELECT 
  season_id,
  cast(
  STUFF((
    SELECT ', '  +  service_id 
    FROM #tmp 
    WHERE (season_id = Results.season_id) 
    FOR XML PATH (''))
  ,1,2,'')as Varchar(max)) AS service_id
  ,service_name
  ,Cast(STUFF((
    SELECT ', ' + product_line
    FROM #tmp 
    WHERE (season_id = Results.season_id) 
    FOR XML PATH (''))
  ,1,2,'')as Varchar(max)) AS product_line
  ,service_date  
FROM #tmp Results
GROUP BY season_id,service_name,service_date

Drop table #tmp