我有两种软件(都是Java):一种是MySSQL,另一种是H2数据库。我的问题是在MySQL中我有这个查询:
Select * from X where (1,2,3) in (select 4,5,6 from Y)
但是在H2中给我这个错误:
子查询不是单列查询; SQL语句:
我基本上理解这是什么意思,但我需要从Y中选择所有Y值,我读到这是最有效的方法。另一种方式可以是将所有值从Y指向Java对象,然后将它们放入X中,但我知道这不是"最好的"这样做的方式
答案 0 :(得分:2)
尝试将查询修改为具有单个值
Select * from X where CONCAT(1,2,3) in (select CONCAT(4,5,6) from Y)
因此,不是3列,而是有一列,其中所有3列值都已连接
答案 1 :(得分:0)
FYI版本1.4.200现在似乎支持此功能