调整Teradata中列中的多行

时间:2013-01-29 00:05:32

标签: sql teradata

假设我有一个如下所示的表:

  

id属性

     

1足球

     

1 NFL

     

1球

     

2足球

     

2签名

     

2 nfl

     

2 blah

     

2 NFL

我想获得一个不同的id列表,其中属性列包含术语“football”,“NFL”和“ball”。因此将包括1,但2不会。在Terdata中最优雅/最有效的方法是什么?

每个ID的属性数量可能不同,并且术语可以重复。例如,NFL对于id 2出现两次。

1 个答案:

答案 0 :(得分:2)

您可以使用以下内容:

select id
from yourtable
where attribute in ('football', 'NFL', 'ball')
group by id
having count(distinct attribute) = 3

请参阅SQL Fiddle with Demo小提琴显示MySQL,但这应该可以在TeraData中使用