我正在尝试执行多个SQL查询,这些查询从同一个数据库的不同表中选择不同的列。结果将粘贴到XML。有没有办法合并查询并生成一个执行语句?
下面你可以找到我用来执行单个查询的代码。
String SQLquery1="SELECT * FROM TABLE1";
String SQLquery2="SELECT P.TITLE, P.LASTNAME, P.FIRSTNAME, P.ADDRESS, PO.POSTCODE, P.SEX FROM TABLE2 P LEFT OUTER JOIN TABLE3 PO ON P.VALUE2= PO.VALUE2";
//Code that exececutes a single query
Statement stmt=null;
Connection db = null;
ResultSet rs=null;
db = DriverManager.getConnection(url);
stmt=db.createStatement();
rs=stmt.executeQuery(SQLquery1);
我想知道我是否可以使用executeQuery将这两个查询作为单个语句执行,或者是否有另一种方法可以单独执行它们。我的意思是我必须为每个查询执行不同的语句吗?
答案 0 :(得分:1)
我的意思是我必须为每个查询执行不同的语句吗?
你这样做。如果您在两个查询中选择相同的列(或至少相同的#和列类型),则可以将查询与UNION ALL
结合起来。由于列不同,您必须使用不同的语句(和连接 - 如果您想同时运行两个查询)。如果按顺序运行查询,则只需一个连接即可。