首页 > 解决方案 > 空查询的 SQL 返回结果

问题描述

所以我有一个简单的查询如下;

从联系人中选择姓名 年龄 > @age

我的问题是,我希望这个查询总是返回一个值。如果没有结果,则假设 SQL 查询返回“”(空格)。

我在最后添加了一个 UNION SELECT;

SELECT Name FROM Contact WHERE 年龄 > @age UNION SELECT ' '

但是,这也会在有结果时添加空白记录。

标签: sql

解决方案


IF NOT EXISTS(SELECT Name FROM Contact WHERE Age > @age)
BEGIN 
SELECT '' AS age
END
ELSE 
BEGIN 
SELECT Name FROM Contact WHERE Age > @age
END

这将检查结果集是否会返回,如果没有,请选择一个空格并命名字段年龄。


推荐阅读