2016-08-19 61 views
-3

我有表ClassificationCode,它有列:SQL Server的列

  • CodeName和代码我有
  • CodeType和1至5的代码的其大陆型的其大陆名称和每个数字参考代码命名

当我用where条件指定名称它的工作原理

Select code name 
from classification code 
where code type = 2 ; 

我的问题是,如果我能在不同的条件下重复的代码名称这样

Select 
    code name, code name as 2, code name as 3 
from 
    classification code 
where 
    code type = 2 And code type = 3 and code type=4... 
+0

你想完成什么? –

+0

这里你的意思并不完全清楚。这将是一个很好的开始。 http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ –

+0

查询更多三次使用deffrent数据选择代码名称 –

回答

0

如果我正确理解你的问题,你有两个选择。首先,如果你想多行,使用in(这相当于or代替and):

select code_name from classification_code where code_type in (2,3,4) 

或者,如果你想pivot你的结果为单行,这里是一个使用conditional aggregation一个选项:

select max(case when code_type = 2 then code_name end) code_name_1, 
     max(case when code_type = 3 then code_name end) code_name_2, 
     max(case when code_type = 4 then code_name end) code_name_3 
from classification_code 
where code_type in (2,3,4) 
+0

非常感谢它的工作:-) :-) –