Hibernate select with AND condition and all AND in OR

Posted

技术标签:

【中文标题】Hibernate select with AND condition and all AND in OR【英文标题】: 【发布时间】:2021-12-27 06:06:30 【问题描述】:

我想在下面用hibernate做

从 mytable 中选择 id where col1=?和 col2=? 或 col1=?和 col2=? 或 col1=?和 col2=? 或 col1=?和 col2=? ...?

这个条件还是 col1=?和 col2=? , 可以是 1000s , 这是否可以在没有条件的情况下进行休眠

【问题讨论】:

select id from mytable where col1 in (...) and col2 in (...) 或使用连接到临时表 这会给出不同的结果,就像我想要 1,1 或 2,2 但它会给出 1,1 -- 1,2 ,, 2,2 【参考方案1】:

你可以试试

SELECT id FROM mytable
WHERE (col1,col2) in (SELECT col1,col2 FROM mytable)

您可以根据您的具体值进行修改,例如在子查询中添加 WHERE 段或仅列出您的所有选项。

您能否更具体地了解col1,col2 值以及它们在 mytable 中的显示方式(它们之间的相关性有多强)?

【讨论】:

我想传递我的值,所以会不会像 SELECT id FROM mytable WHERE (col1,col2) in (? ,?) 然后 query.setParamterList(lst1) query.setParamterList(lst2) 这似乎只在(查询)不带参数时才有效,我需要带参数和休眠的东西 col1,col2 数字吗?字符串? Strings ,但这有什么不同 一般情况下不会。你可以添加一些代码吗?我认为我的解决方案适用于一般情况

以上是关于Hibernate select with AND condition and all AND in OR的主要内容,如果未能解决你的问题,请参考以下文章