如何在IN中使用带有IN的sql查询来获取Java中的select语句

时间:2011-05-14 14:04:12

标签: java sql jdbc

我需要在java中使用带有IN子句的sql查询。当IN子句是一个预定的集合时,我已经看到了这样做的建议,比如数字在这种情况下不起作用,因为集合是动态的。这是我想要做的:

select c.cust_name 
from cust_acct c, has h 
where c.cust_id=h.cust_id 
    and h.sh_add in (select a.sh_add from address a where sh_st='VA')

我没有任何错误。也就是说,代码运行我只是没有得到这个特定查询的结果

1 个答案:

答案 0 :(得分:0)

您是否检查过您从select a.sh_add from address a where sh_st='VA'获得正确的中间结果?

您可以将查询重写为:

select c.cust_name 
from cust_acct c
inner join has h 
on c.cust_id=h.cust_id 
inner join address a
on h.sh_add = a.sh_add
where a.sh_st = 'VA'