第一条sql查询的结果id用作第二条sql查询的条件 现在只能显示一条数据

这是图片求解决
li=d.getObjects("select s.suId from Subject s where sudirec='SCME'"+" and sustage='G1'");
for(int i=0;i<li.size();i++){
Object sid=li.get(i);
li=d.getObjects("select s from Subject s where suId='"+sid+"'");
li2=d.getObjects("select count(ptype) from Question where suid='"+sid+"' and ptype='机试题'");
li3=d.getObjects("select count(ptype) from Question where suid='"+sid+"' and ptype='笔试题'");
}

可以用row_number函数,如以下数据:
ID NAME
1 张三
3 李四
5 王五
7 赵六
如查询王五这条数据在数据库里是第几条,可以这样。

select t.rn from(select *,row_number() over(order by id) rn from 表名) twhere t.name='王五'

结果会显示为3,也就是第三条数据追问

我需要的是查出所有数据 这是我现在的代码可以看一下
for(int i=0;i<li.size();i++){
Object sid=li.get(i);
这里能够获取到多个id;
li=d.getObjects("select s from Subject s where suId='"+sid+"'");
在这个位置就只能获取到一个了,所以也只能查出一条数据
}

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答
大家正在搜