当前位置: 首页 > 知识库问答 >
问题:

Hibernate:只从一个表中选择全部,而不是从三个联接的表中选择

阙弘博
2023-03-14

我想问一下,是否有人只能从表A中选择值。请参阅下面的hibernate代码

   Criteria c = session.createCriteria(A.class);
   Criteria t= c.createCriteria("b");
   Criteria k= c.createCriteria("c", JoinType.LEFT_OUTER_JOIN);

现在,它就像从A、B和C中选择值,而且太多了。

谢谢你吉米

共有1个答案

勾炜
2023-03-14

我的解决方案是

1) 创建一个ProjectionList hibernate变量。

2) 识别表A的所有列,并将它们放入ProjectionList变量中。

 类似资料:
  • 问题内容: 我正在尝试查找一个表中的行,而不是另一个表中的行,这两个表都在不同的数据库中,并且在我要用来匹配的列上也有不同的列名。 我有一个查询,下面的代码,我认为它可能有效,但是速度太慢: 因此查询尝试执行以下操作: 从R2R.partmaster数据库中选择wpsapi4.product_details数据库中没有的所有ID。我匹配的列是partmaster.id和product_detail

  • 问题内容: 如何编写SQL语句从三个表中选择数据? 问题答案: 使用联接 这将要求每个表都有一个table_1_id键,并且每个表中都有一个条目。 如果table_2或table_3可能没有数据,但您仍想显示来自table_1的数据,则可以使用LEFT JOIN

  • 我的数据库中有两个表。一个表包含有关用户的信息,而另一个表包含有关预订的数据。当用户进行预订时,userid将被放置在预订表中。现在,我想展示一张用户的照片,其中包括预订的备注和日期,但是照片在users表中。 这是我的两张桌子: null null

  • 问题内容: 我有两个表: 我想从表1中选择所有具有值A和B的表2行的行。这将是行1和3(不是2行,因为它只有A,没有4行是因为只有B)。我可以在没有子查询的情况下执行此操作吗? (注意:我还需要查询表1中的值,因此我不能只查询表2。) 问题答案: 塔达阿!没有子查询。

  • 问题内容: 在联接表时,传统上可以使用SQL89的联接方式,例如 但是从SQL92标准开始,我们现在可以使用JOIN语法进行联接 有什么理由使某人从多个表中不加入就可以吗?现在,我知道人们使用来连接数据,但这不是我要说的。 我们严格在向后兼容的原因中在子句中添加带有逗号的表的原因是吗?还是有任何现实的情况,仅通过联接就不可能使用旧语法? 问题答案: 如果出于某种原因需要完整的笛卡尔积,则可能会很有

  • 问题内容: 我昨天提出的问题已简化,但我意识到我必须报告整个故事。我必须将4个不同表中的4个数据提取到Firebird 2.5数据库中,并且以下查询有效: 但是,由于REVISIONE列,查询返回的值是我的两倍(或更多)。如何仅选择具有最大REVISIONE值的单个NUMEROCOMMESSA的行? 问题答案: 在这里-http: //sqlfiddle.com/#!6/ce7cf/4 样本数据(