表名为 播放器 ,其中包含一些列&表中的数据如下:
PID | PNAME | CITY | TEAM | SALARY |的 NO_OF_PENALTIES
1001 ozil istanbul germany 500000 1
1002梅西马德里阿森纳500000 21003 ronaldo manc uk 600000 1
1004 puyol sussex germany 400000 3
1005 fabregas manchester uk 450000 2
1006 costa ankara turkey 400000 3
1007 beckham london uk 600000 2
这是表。如果团队名称是“德国”,则写一个我想要记录的查询。 no_of_penalties = 1然后我想得到记录。如果团队名称是“uk”& no_of_penalties = 2然后我不想得到记录。 根据上述记录的平均值,根据查询我想获得pid = 1001&的记录。 PID = 1003。 但是当我编写如下所示的查询时:
select * from player where (team='germany' and no_of_penalties=1) or not (team='uk' and no_of_penalties=2) and team in ('germany','uk');
然后执行上面的查询后,输出看起来像pid = 1001,1003,1004,如下所示
那么请你解决我的问题吗?
答案 0 :(得分:1)
这就是你想要的:
SELECT sno,
city_name,
DATE,
CASE
WHEN city_name = 'CA' and
THEN 'N'
WHEN city_name = 'DC'
THEN 'Y'
ELSE flag
END flag
FROM your_table;