执行Except语句

时间:2017-02-22 12:00:02

标签: sql sql-server

我有两张桌子

Marks(source table)
与coulmns:
class(number)
name(varchar)
rollno(number)

Result(target table)
列:
Grade(varchar)

可以允许传递,失败,错误的数据值。

在比较来自两个表的数据时,来自源的所有数据都将迁移到目标或不是我使用以下案例陈述

   select 
      CASE  WHEN Class=4 THEN 'pass'            
            WHEN name='T' AND Class=4 THEN 'fail'
            WHEN rollno= 41 THEN 'pass'
            ELSE 'wrong data' END AS name 
   FROM class
   EXCEPT
   select grade 
   from result 
   where grade in('pass',fail','wrong data');

当我尝试执行此查询时,“错误数据”将在输出中打印而不正确执行case语句。

我试图将源表中的值与给定的条件与目标进行比较,如果条件满足输出应该是

       Name

只需显示列名称,因为源中满足的所有条件都存在于目标

0 个答案:

没有答案