尝试分组id:
SELECT id,
MAX(col1) AS col1,
MAX(col2) AS col2,
MAX(col3) AS col3,
MAX(col4) AS col4
FROM test
GROUP BY id
Run Code Online (Sandbox Code Playgroud)
这样做的原因是在SQL Server中MAX忽略了NULL值,因此在分组操作期间只保留单个VARCHAR值(例如'ABC').
test表中的数据似乎是数据透视查询的中间步骤.