[英]How to use a PreparedStatement as a subquery in another prepared statement
我在代碼中使用PreparedStatement
進行查詢。 例如:
PreparedStatement stmt = db.con.prepareStatement("select id from nodes where x>? and x<? and y>? and y<?");
stmt.setDouble(1, x1);
... //set a value for each param 1 thru 4
現在我有另一個查詢想要使用與上面完全相同的查詢作為子查詢。 所以我可以這樣做:
PreparedStatement stmt2 = db.con.prepareStatement("select id from edges where startNodeId in
(select id from nodes where x>? and x<? and y>? and y<?)");
但這是重復的,我可能會修改第一個PreparedStatement
並希望這些更改傳播到第二個。 有沒有辦法將准備好的語句設置為另一個語句中的子查詢?
也許類似於stmt2.setPreparedStatement(2, stmt)
?
只需將兩個查詢合並為一個SELECT
語句即可。
SELECT x,y,z FROM tablez WHERE id IN (SELECT id FROM "your first query")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.