具有与Excel VLookup相同功能的SQL Server查询条件

时间:2014-06-09 13:09:58

标签: mysql sql sql-server

select 
b.columnb,
case when a.columna is null then 'FALSE' else 'TRUE' end 
from
tableb b left outer join
tablea a on b.columnb = a.columna 

在上面的查询中,我怎么能再包含一个条件才能看到' False'值?

感谢。

2 个答案:

答案 0 :(得分:1)

嗯,你可以:

  • 最后输入一个WEHERE条件,即a.columna的填充为空 OR
  • 将所有内容包装到另一个选项中,其中字段(您必须命名 - 案例应为该字段发出名称)将被FALSE过滤。您至少可以在SQL Server中使用任何SELECT语句而不是表名。

答案 1 :(得分:1)

只需将WHERE添加到您的SELECT声明中:

select 
b.columnb,
case when a.columna is null then 'FALSE' else 'TRUE' end 
from
 tableb b 
 left outer join tablea a on (b.columnb = a.columna)
WHERE a.columna IS NULL;

在这种情况下,您可以将其简化为:

SELECT
b.columnb,
'FALSE'
FROM
 tableb b 
 LEFT OUTER JOIN tablea a ON (b.columnb = a.columna)
WHERE a.columna IS NULL;