0

这是我在这里复制的代码的一部分。我被卡住的逻辑是我想计算除天空体育以外的所有频道的点击次数和(其他类型描述体育的电视)我认为我的逻辑在这里不起作用。

count(case when CHANNEL_NAME NOT IN('Sky Sports 3'
,'Sky Sports 1'
,'Sky Sports 2'
,'Sky Sports 4'
,'Sky Sports F1'
,'Sky Sports Ashes'
,'Sky Sports Interactive Lo 7'
,'Sky Sports Interactive Lo 1'
,'Sky Sports Ineractive Hi 5'
,'Sky Sports Ineractive Hi 1'
,'Sky Sports Ineractive Hi 4'
,'Sky Sports Interactive Lo 9'
) or (channel_name <> 'Other TV' and genre_description <> 'Sports') then 1 end) 
4

2 回答 2

1
sum(case when CHANNEL_NAME LIKE 'Sky Sports%'
                OR (channel_name = 'Other TV' AND genre_description = 'Sports')
           then 0 
           else 1
      end) 
于 2013-09-26T09:47:50.007 回答
1

您的使用在or这里不准确。例如,如果名称是"Other TV",它将匹配第一个条件(名称不是"sky sports something")并将被包括在内。您应该使用and,因为您希望您的频道满足所有标准。

于 2013-09-26T09:49:08.417 回答