如何在列中获取不可为空的数据

时间:2014-09-01 14:00:54

标签: sql sql-server sql-server-2008

请参阅以下详细信息

当前输出:

EmpID   EmployeeDailyFee  EmployeeMonthlyFee  CompanyDailyFee  CompanyMonthlyFee
12      NULL              150                 NULL             NULL
12      120               NULL                NULL             NULL

预期产出:

EmpID   EmployeeDailyFee  EmployeeMonthlyFee  CompanyDailyFee  CompanyMonthlyFee
12      120               150                 NULL             NULL

请告诉我你的建议

1 个答案:

答案 0 :(得分:2)

如果您只为每位员工在每列中获得一个非空值,则可以尝试以下操作:

SELECT EmpID ,
       MAX(EmployeeDailyFee) AS EmployeeDailyFee,
       MAX(EmployeeMonthlyFee) AS EmployeeMonthlyFee, 
       MAX(CompanyDailyFee) AS CompanyDailyFee, 
       MAX(CompanyMonthlyFee) AS CompanyMonthlyFee
FROM Employees
GROUP BY EmpID 
相关问题