Sql Grails查询没有域关系的表上的左联接
我是Grails的新手,这个问题困扰了我好几个小时。提前感谢您的帮助 我的问题是: 我有一个包含两个表的数据库Sql Grails查询没有域关系的表上的左联接,sql,grails,join,hql,Sql,Grails,Join,Hql,我是Grails的新手,这个问题困扰了我好几个小时。提前感谢您的帮助 我的问题是: 我有一个包含两个表的数据库 项目 喜欢 你可以猜到,用户有权喜欢一个项目。 在域类项目中没有关系(belongsTO、hasOne等) 在域类中相同喜欢 在数据库中,表LIKES有一个字段project\u id,但它未设置为外键。这样做的目的是正确的 现在,我需要使用grails执行一个本机SQL查询,它非常简单,并返回预期的结果 结果是所有项目都有喜欢或不喜欢的地方 以下是查询: 我找不到将此SQL查询转换
感谢您的帮助如果您的域类没有关系,您就不能使用
HQL
,正如您所注意到的那样
但是在Grails中,您可以使用groovy.sql.sql
直接访问数据库。服务示例:
class MyService {
def dataSource
void addNewRecord(String data) {
groovy.sql.Sql sql = new Sql(dataSource)
sql.execute("insert into my_table(my_anydata_clomn) values(sys.anyData.convertVarchar2(?))",[data])
}
}
如您所注意到的,如果您的域类没有关系,您就不能使用
HQL
但是在Grails中,您可以使用groovy.sql.sql
直接访问数据库。服务示例:
class MyService {
def dataSource
void addNewRecord(String data) {
groovy.sql.Sql sql = new Sql(dataSource)
sql.execute("insert into my_table(my_anydata_clomn) values(sys.anyData.convertVarchar2(?))",[data])
}
}
好的,它是这样工作的:)
def数据源
def getProjectList(){
groovy.sql.sql=新的groovy.sql.sql(数据源)
log.info(sql)
log.info(“数据源”+数据源)
def t=sql.rows(“选择*\n”+
“来自项目\n”+
“左连接\n”+
“ON project.id=likes.project\u id\n”+
“按喜欢排序。喜欢”)
sql.close()
返回t;
}
好的,它是这样工作的:)
def数据源
def getProjectList(){
groovy.sql.sql=新的groovy.sql.sql(数据源)
log.info(sql)
log.info(“数据源”+数据源)
def t=sql.rows(“选择*\n”+
“来自项目\n”+
“左连接\n”+
“ON project.id=likes.project\u id\n”+
“按喜欢排序。喜欢”)
sql.close()
返回t;
}
你能展示你的域类吗?你能展示你的域类吗?