当前位置: 首页 > 面试题库 >

我可以选择多个但只能返回一个结果集吗

林修真
2023-03-14
问题内容

如果我有多个选择,例如:

select * from A where A.name = 'link枚ping'

IF @@ROWCOUNT = 0
begin
    select * from A where A.amount = 45
end

…如果第一个选择返回内容,我得到1个结果集。但是,如果运行第二个,我将得到两个结果集。第一个没有行,第二个没有行。

如果运行第二个选择,是否有办法仅返回第二个结果集?

谢谢!


问题答案:

您需要通过 运行选择 之前 检查是否会返回任何结果来阻止首次选择。

例如:

IF EXISTS (SELECT 1 FROM A WHERE A.name = 'link枚ping')
BEGIN
    SELECT * FROM A WHERE A.name = 'link枚ping'
END
ELSE 
BEGIN
    SELECT * FROM A WHERE A.amount = 45
END


 类似资料:
  • 问题内容: 我有一个数据库,正在运行以下查询: 上面的查询一次返回两个结果集,我不能分别触发两个查询。如何在Java类中一次处理两个结果集? 问题答案: 正确的代码来处理JDBC语句返回的多个: 重要位: 并返回以表明语句的结果只是一个数字,而不是一个。 您需要检查以了解是否还有更多结果。 确保关闭结果集或使用

  • 问题内容: 我需要一个SP来返回多组结果。第二组结果将基于第一组结果的一列。 所以: 如何用我的SP返回@ myTable1和@ myTable2?这种语法完全正确吗? 抱歉,我仍然是SQL的新手… 编辑: 因此,我在下面的代码的最后一行看到错误:“必须声明标量变量“ @ myTable1”” 如果我突出显示并运行代码直到第二个代码,它就可以正常工作。 EDIT2: 解决了该问题。谢谢你们。 问题

  • 问题内容: HQL可以在另一个查询的结果集上进行选择吗? 例如: 我可以在SQL中完成此操作,但是当我在HQL中尝试以上操作时,它只是向我显示语法错误“意外的令牌:(靠近第1行,第22列…”) 问题答案: HQL确实支持子查询,但是它们只能出现在select或where子句中。您提供的示例最好以HQL的直接陈述形式编写。例如: 如果查询所涉及的语句比复杂,我建议将该逻辑放入视图中,然后根据该视图创

  • HQL是否可以对另一个查询的结果集进行选择?例如: 我可以在SQL中完成,但当我在HQL中尝试上述操作时,它只显示了语法错误“意外标记:(靠近第1行,第22列…”

  • 我在过去使用过JSoup并能够将XPath转换为选择器,但是在一个已经改变的站点上,我无法获得这个表的结果。 Firefox为表 两个都不起作用。即使在Try JSoup链接 第一个第n个子表本身返回NULL。 你知道这个页面有什么特别之处吗? 我将用户代理字符串设置为

  • 问题内容: 我有三个SQL选择,需要将它们的结果加在一起。这三个中的两个使用相当复杂的联接。 我需要的是所有三个值的总和。 。无论如何,是否可以在单个语句中执行此操作? 问题答案: 你可以的。 请勿使用,因为它会忽略重复的值(会导致)。