将两列合并为一列-SQL

ireturn0

样本数据 -

CREATE TABLE dbo.#test
(
    id int NOT NULL,
    name varchar (10) NULL,
    name2 varchar (10) null
);

insert into #test values ('1','abc','abc')
insert into #test values ('1','abc','yyy')
insert into #test values ('1','abc','zzz')
insert into #test values ('1','abc','ddd')

select * from #test

现在,我尝试加入/合并“名称”和“名称2”列,然后删除重复项并显示如下值-有什么想法吗?

Name
abc
ddd
yyy
zzz

我需要使用CASE语句来完成此操作,即下面的示例代码。(尽管这可以通过使用UNION来实现,但是我需要使用CASE语句)

select  case 'b'
when 'a'
then name 
when 'b'
then coalesce (name , name2 )
end as NAME from #test
马特·理查森(Mat Richardson)

这太糟糕了,实际上应该使用UNION来完成,但是我想这就是您在此示例中追求的:-

select
  case
    when (select count(*) from #test b where b.name = a.name2) > 1 then a.name
    else a.name2
  end as Name
from #test a

确实,您应该有这样的东西:

select name from #test
union
select name2 from #test

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将两个SQL列合并为一列

来自分类Dev

SQL Server,如何将两列合并为一列?

来自分类Dev

如何使用C#或SQL将两列合并为一列

来自分类Dev

将列合并为一列SQL Server

来自分类Dev

如何将这两行合并为SQL中的一列

来自分类Dev

将数据合并为一列-SQL Server 2012

来自分类Dev

SQL select将两列合并为一

来自分类Dev

SQL查询将两列合并为一

来自分类Dev

SQL Join将两列合并为一

来自分类Dev

在SQL Oracle SQL Developer中将来自单独表的两列合并为一列

来自分类Dev

ACCESS / SQL将多行与一列合并为一行并创建多列

来自分类Dev

在SQL中将多列合并为一列

来自分类Dev

在SQL中将多列合并为一列

来自分类Dev

SQL:将多列合并为一列进行排序(仅输出)

来自分类Dev

通过将多个列合并为一列来对Sql Table进行排序

来自分类Dev

使用SQL时将多行合并为一行(一列)

来自分类Dev

SAP HANA SQL - 将一列的多个结果行合并为一行

来自分类Dev

将两列合并/合并为 1 ( t-sql )

来自分类Dev

SQL仅使用一组数据将两列合并为一个

来自分类Dev

SQL Server将日期时间列合并为一

来自分类Dev

如何在SQL中将多列合并为一列?

来自分类Dev

SQL:一2多行,其中多行合并为一列

来自分类Dev

SQL将多行合并为多列

来自分类Dev

将一列拆分为两列 - SQL Server

来自分类Dev

SQL-将选择语句中具有不同列数的两个查询合并为一个

来自分类Dev

将两列合并为一列

来自分类Dev

如何将两列合并为一列?

来自分类Dev

将两列合并为一列

来自分类Dev

通过将多个列合并为一个列对Sql Table进行排序