如何使用Hibernate比较两个不同表中的字段?

如何使用Hibernate比较两个不同表中的字段?,hibernate,hql,Hibernate,Hql,我需要使用Hibernate查询比较两个不同表中的字段 表A有一个由sectionId(例如1900)组成的字段 表B中有一个由用户ID/sectionId组成的字段(如e1230-12w11-3ewq-qg22-34qa/1900) 我需要从表B中提取sectionId,并将其与表A中的sectionId进行比较,以便为新表构建一行。我还需要从表B中提取userId,并将其用作新行的一部分 hql是否能够部分比较字段?我认为您可以使用:子字符串和定位来完成此操作 LOCATE将能够定位输入字符

我需要使用Hibernate查询比较两个不同表中的字段

表A有一个由sectionId(例如1900)组成的字段

表B中有一个由用户ID/sectionId组成的字段(如e1230-12w11-3ewq-qg22-34qa/1900)

我需要从表B中提取sectionId,并将其与表A中的sectionId进行比较,以便为新表构建一行。我还需要从表B中提取userId,并将其用作新行的一部分


hql是否能够部分比较字段?

我认为您可以使用:子字符串和定位来完成此操作

LOCATE将能够定位输入字符串中的特定字符,并返回其位置。

然后,您应该能够使用SUBSTRING根据LOCATE返回的索引仅返回字符串的一部分

您是否检查了子字符串(…)函数并自己比较了ID的所需部分(=)?谢谢Nowicki:)。子字符串只允许我使用它们的索引提取字符串。如果我可以使用“/”来标识有两个不同的字符串,那就太好了。你知道吗?干杯我已经总结了这里所说的,以及你在另一篇文章中的第二个问题的答案。