我有一个非常简单的任务来查询表并使用某些参数进行过滤(此参数是其他表的外键)。
例如 Table1 包含以下字段:
id, name , description, company_id;
我有一个方法,将 company_id (不是公司对象)作为输入并返回 table1 中的所有记录。条件查询如下所示:
DetachedCriteria criteria = DetachedCriteria.forClass(Table1.class)
.add(Restrictions.eq("company.id", companyId));
问题是生成的查询过于复杂,因为它连接了几个表来执行此操作。而且这个查询不是“生产就绪”
有没有办法建立条件来进行这样的 SQL 查询?:
SELECT * from table1 where company_id =?