首页 > 解决方案 > 在 Java 中执行 SQL 查询,其子查询结果已单独获取

问题描述

是否可以在 Java 中执行已获取子查询结果的 SQL 查询

例如假设我有一个查询

SELECT A.NAME FROM (SELECT NAME, CLASS FROM ABC_TABLE) A WHERE A.CLASS = 1;

我想要的是,如果我单独执行子查询,即

SELECT NAME, CLASS FROM ABC_TABLE

并且我从结果集中获得的结果将根据一些 Java 计算进行修改,然后需要将修改后的结果传递给第一个主查询。

可能吗。

注意:上面给出的示例是一个示例。实际上,子查询非常大,有 300-400 行,主查询也是如此

标签: javamysqlsqljdbc

解决方案


使用 Alias 对其进行排序。以下是我使用的查询,它正在工作:

Select * from (select * from 
              (select * from school.questionbank where class='class-II' 
               AND Subject='Physic') A 
               where chapter='chapter 1') B 
where isMCQ=1;

注意A和B是SQL在内存中创建的临时表


推荐阅读