gpt4 book ai didi

Hibernate Criteria 对象 - 执行 INTERSECT

转载 作者:行者123 更新时间:2023-12-03 07:00:31 26 4
gpt4 key购买 nike

我想知道使用 Criteria API 对象是否可以轻松执行 Oracle INTERSECT。

使用 Hibernate 3.2

EX。我想要“表”中存在的所有 t.value,其中名称为 dora 和 diego。

从表 t 中选择 t.value,其中 t.name = 'Dora'

相交

从表 t 中选择 t.value,其中 t.name = 'Diego'

我想我必须使用限制 sqlRestriction 或编写一个被调用的 Oracle 存储过程来执行此操作。还有其他建议吗?

解决方案1:

    Session sessionFactory = sessionFactory.getCurrentSession();         
String intersetSQLQuery = "SEE QUERY STRING BELOW";
SQLQuery query = sessionFactory.createSQLQuery( intersetSQLQuery );
query.addScalar( hibernate_mapped_field_name,Hibernate.STRING);
//Returns a list of string objects
nameList = query.list();

最佳答案

目前似乎不支持相交。请参阅https://hibernate.onjira.com/browse/HHH-1050

你也许可以逃脱类似的惩罚

select t.value from table t 
where t.name = 'Diego'
and t.value in
(select t1 from table t1
where t1.name = 'Dora')

关于Hibernate Criteria 对象 - 执行 INTERSECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7392595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com