1

我的 SQL 查询结果,

EmployeeID EmployeeName 部门
1 约翰·销售
2 罗伯特·萨斯
3 苏迪尔销售
4 罗杰发展

输出应该是

EmployeeID EmployeeName 部门
1 约翰·销售
2罗伯特          
3 苏迪尔          
4 罗杰发展
4

1 回答 1

1

你可以这样做:

;WITH CTE
AS
( 
   SELECT EmployeeID, EmployeeName, Department,
     ROW_NUMBER() OVER(PARTITION BY Department ORDER BY(SELECT 1)) rownum
  FROM table1
)
SELECT
  EmployeeId,
  EmployeeName,
  CASE rownum
    WHEN 1 THEN Department
    ELSE ''
  END AS Department
FROM CTE
ORDER BY EmployeeID;

SQL 小提琴演示

请注意:尽量不要在 SQL 中做这些格式化的事情。SQL与格式化无关。

于 2012-12-06T11:25:37.557 回答