2017-08-28 25 views
0

我目前正在嘗試將Oracle(A VARCHAR2)中的ID與作爲輸入的ID數組進行比較。選擇where id =數組(Oracle JDBC)

這就是我想做的事:

在Postgres裏用JDBC,我會用:

Select user, city where id = any(:arrayOfIds) 

是否有甲骨文的equivelent功能或者我該怎麼做呢?

在此先感謝親愛的堆棧溢出!

回答

0

你應該使用:

Select user, city where id in (:arrayOfIds) 

並在你的代碼,你需要用ID來trasform數組中的字符串:

arrayOfIds[0] --> 1 
arrayOfIds[1] --> 3 
arrayOfIds[2] --> 5 

... 在

1, 3, 5, ... 

你可以使用:

Array array = conn.createArrayOf("arrayOfIds", new Object[]{"1", "2","3"}); 
pstmt.setArray(1, array); 

How to use an arraylist as a prepared statement parameter