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

如何在HQL中模拟NVL

归誉
2023-03-14
问题内容

我尝试了这个:

from Table where (:par1 is null or col1 = :par1)

但是碰巧

from Table where :par1 is null

即使:par1不为null,也总是返回表的所有行。

 select * from table where col1 = 'asdf'

不返回任何行。

我不能使用本机语法,因为我的应用程序应该在不同的数据库引擎上运行


问题答案:

nvlHQL中的coalesce命令等效于该命令。 如果不为null,则coalesce(a,b)返回,否则返回。a``a``b

因此,您需要以下方面的东西:

from Table where col1 = coalesce(:par1, 'asdf')


 类似资料:
  • 我知道Dan North设计BDD的意图之一是将词汇表从复杂的测试域中移开。然而,在实现由外到内的方法时,我们似乎仍然需要对模仿行为(或者,如果您愿意的话)有一些了解。North在这个视频中建议,如果我从最外层的域对象开始,然后向内工作,我会在发现合作者时模仿它们,然后用适当的实现替换它们。所以最后,我以一组端到端测试结束。 Martin Fowler在这篇博客文章中定义了TDD的两个阵营:“古典

  • 问题内容: 大多数关系数据库都有某种字符串函数,例如: 会屈服 另一方面,SQLite具有非常有限的功能集。SQLite支持的功能在此处列出: http://www.sqlite.org/lang_corefunc.html 可以使用SQLite中可用的功能进行仿真吗? 问题答案: 我的答案结合了Shiplu Mokaddim的 “printf字符替换重复”和Steve Broberg和[Luka

  • 我尝试对一个包含restclient的服务进行一个简单的测试。看来我没有成功地模仿。看起来代码得到的是真实数据,而不是模拟数据。任何人都可以帮我。 服务本身将如下所示:

  • 是模拟抽象类:,而是接口。这是失败点: 如何模拟这段代码?

  • 我有一种方法可以将文件上传到Amazon S3。我正在尝试为此方法编写JUnit,但在S3AsyncClient上获取NullPointerException: 我的班级: S3UploadData类对象的输入:` @Getter@allargsconstuctor 你能帮我写Junit for uploadFile方法吗?

  • 我正在寻找一种模式,允许在Kubernetes的同一个pod上运行的两个容器之间共享卷。 我的用例是:我有一个在docker容器中运行的Ruby on Rails应用程序。docker映像包含应用程序中的静态资产/ 在“vanilla”docker中,我会使用“volumes from”标志共享此目录: 阅读此文档后:https://github.com/GoogleCloudPlatform/k