更正一下,表A,B是由A.A_a B.A_a关联起来的 , 很不好意思啊!

解决方案 »

  1.   

     
    CASE
    计算条件列表并返回多个可能结果表达式之一。 CASE 具有两种格式: 简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。 
    CASE 搜索函数计算一组布尔表达式以确定结果。 
    两种格式都支持可选的 ELSE 参数。 语法
    简单 CASE 函数:CASE input_expression
        WHEN when_expression THEN result_expression
            [ ...n ]
        [ 
            ELSE else_result_expression
        ENDCASE 搜索函数:CASE
        WHEN Boolean_expression THEN result_expression
            [ ...n ]
        [ 
            ELSE else_result_expression
        END参数
    input_expression是使用简单 CASE 格式时所计算的表达式。Input_expression 是任何有效的 Microsoft® SQL Server™ 表达式。 WHEN when_expression使用简单 CASE 格式时 input_expression 所比较的简单表达式。When_expression 是任意有效的 SQL Server 表达式。Input_expression 和每个 when_expression 的数据类型必须相同,或者是隐性转换。 n占位符,表明可以使用多个 WHEN when_expression THEN result_expression 子句或 WHEN Boolean_expression THEN result_expression 子句。THEN result_expression当 input_expression = when_expression 取值为 TRUE,或者 Boolean_expression 取值为 TRUE 时返回的表达式。result expression 是任意有效的 SQL Server 表达式。 ELSE else_result_expression当比较运算取值不为 TRUE 时返回的表达式。如果省略此参数并且比较运算取值不为 TRUE,CASE 将返回 NULL 值。Else_result_expression 是任意有效的 SQL Server 表达式。Else_result_expression 和所有 result_expression 的数据类型必须相同,或者必须是隐性转换。WHEN Boolean_expression使用 CASE 搜索格式时所计算的布尔表达式。Boolean_expression 是任意有效的布尔表达式。 结果类型
    从 result_expressions 和可选 else_result_expression 的类型集合中返回最高的优先规则类型。有关更多信息,请参见数据类型的优先顺序。 结果值
    简单 CASE 函数:
    计算 input_expression,然后按指定顺序对每个 WHEN 子句的 input_expression = when_expression 进行计算。 
    返回第一个取值为 TRUE 的 (input_expression = when_expression) 的 result_expression。 
    如果没有取值为 TRUE 的 input_expression = when_expression,则当指定 ELSE 子句时 SQL Server 将返回 else_result_expression;若没有指定 ELSE 子句,则返回 NULL 值。 
    CASE 搜索函数:
    按指定顺序为每个 WHEN 子句的 Boolean_expression 求值。
    返回第一个取值为 TRUE 的 Boolean_expression 的 result_expression。 
    如果没有取值为 TRUE 的 Boolean_expression,则当指定 ELSE 子句时 SQL Server 将返回 else_result_expression;若没有指定 ELSE 子句,则返回 NULL 值。 
    示例
      

  2.   

    select a.A_a,a.A_b, case (b.A_a is Null) when true‘是’else ‘否’end then from a left outer join b on A.A_a = B.A_a
      

  3.   

    select case when A.A_a = B.A_a then '是' else '否' end from a left join b on a.a_a=b.a_a
      

  4.   


    select a.a_a, a.a_b,(case when a.a_a=b.a_a then 'yes'
                      else 'no' end) yesorno from a ,b
      

  5.   

    select (case when B.A_a is null then '否' else '是' end )
    from a left join b on a.a_a=b.a_a
      

  6.   

    pengdali(大力 V3.0) 
    你写的SQL 语句只能显示 是 和否
    当要求是将 A.A_a, A.A_b 也显示出来
    我也不知道 A.A_a, A.A_b 字段应该放到哪个地方,还是调不出来
    多谢指点不过我还是要先揭帖 哈哈……
      

  7.   

    不行, 现在还不 可以揭帖
    我刚才把楼上的SQL语句都试了一下,不行啊
    有的的确可以显示 ‘是’‘否’但是另外两个字段没有显示出来
     Rotaxe(程序员)查询结果有重复的
    还望大家多多指教啊……
      

  8.   

    select A_a,A_b, case 
    when A_a in(select A_a from B) then‘是’
    else‘否’end then from a
      

  9.   

    应该是select A_a,A_b, case 
    when A_a in(select A_a from B) then‘是’
    else‘否’end  from a