如何将结果变成单排?

时间:2015-12-14 02:28:20

标签: sql sql-server tsql

我有以下

;with cte as(
Select  1 as Col1 ,NULL as Col2
Union All

Select Null ,2)

select *
from cte

/ *结果* /

Col1         Col2
1            NULL
NULL          2

我正在寻找

Col1         Col2
1             2

即。结果应排在一行。

我们如何实现这一目标?

5 个答案:

答案 0 :(得分:2)

如果没有关于您的数据的更多详细信息,似乎应用像max这样的简单聚合函数应该完成您的工作:

...
select max(col1) as col1, max(col2) as col2
  from cte

答案 1 :(得分:1)

SELECT MAX(col1) , MAX(col2) FROM cte

答案 2 :(得分:1)

您可以使用任何聚合函数,如Max()或Min()或Sum()取决于您的要求

答案 3 :(得分:1)

1您问题中的信息有限,这是您尝试实现的目标吗?

;with cte as(
Select  table1.Col1 , table2.Col2 From Table1
JOIN table2
ON table1.col1 = table2.Col1
WHERE table1.Col1 = 1 and table2.Col2 = 2
)

select *
from cte

答案 4 :(得分:0)

使用笛卡尔联接,我们可以得到所需的结果:

select t2.a,t1.b from table t1,table t2 where t1.b is not null and t2.a is not null;