java - 循环创建动态 SQL 字符串

标签 java grails

我正在解决一个问题,该问题将使用某些字段返回唯一的行。字段的数量可以是 2 个或 20 个,因此我需要根据关键字段及其值的列表动态生成 SQL 字符串。 SQL 看起来像这样:

Select count(data_cd) from dev_util.t_generic_repository AS ...

这是我需要动态生成字符串的地方,所以如果我有三个关键字段,我需要......

Select count(data_cd from dev_util.t_generic_repository AS X, dev_util.t_generic_repository AS Y, dev_util.t_generic_repository AS Z

解决这个问题的最佳(也是最有效)方法是什么?语言是 Java,但任何语言都可以工作。

最佳答案

由于您使用的是 grails(默认情况下使用 hibernate),因此您可以使用“条件查询”。这些允许您以编程方式构建查询。这比自己动态创建查询字符串要好。

http://www.grails.org/Hibernate+Criteria+Builder

关于java - 循环创建动态 SQL 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3319480/

相关文章:

java - 当存在多个java bean类时如何设置值

java - jsp页面中的ChoiceBox迭代

java - 没有 web.xml 的 Servlet 3.0 错误页面 javaconfig

Grails 从 2.2.1 升级到 2.3.4 @Secured 注解

hibernate - Grails Hibernate批注

grails - 使用数据库迁移时,作者名称是如何生成的

java - Android:使用 Messengers for IPC 实现同步/阻塞 API

对于任何域,Java SSL 握手总是获得 "PKIX path building failed"

xml - 重新启动服务器后,Grails XML更改不会反射(reflect)出来

rest - Grails-withRest响应不是JSON