表T1包含字段a, b
表T2包含字段c, d
表T3包含字段a, b, c, d
表T1和T2的纪录数一样多
现在要将T1和T2中的值取出,按顺序插入到T3中,例如
T1
1, 2
11, 22
T2
3, 4
33, 44
操作后T3因该为
1, 2, 3, 4
11, 22, 33, 44
用java怎么实现?
表T2包含字段c, d
表T3包含字段a, b, c, d
表T1和T2的纪录数一样多
现在要将T1和T2中的值取出,按顺序插入到T3中,例如
T1
1, 2
11, 22
T2
3, 4
33, 44
操作后T3因该为
1, 2, 3, 4
11, 22, 33, 44
用java怎么实现?
resultset2: select * from T2while(resultset1.next()&&resultset2.next())
values( resultset1.getString("a"), resultset1.getString("b"), resultset2.getString("c"), resultset2.getString("d"))
INTO t3
FROM t1,t2
resultset1: select * from T1
resultset2: select * from T2while(resultset1.next()&&resultset2.next())
values( resultset1.getString("a"), resultset1.getString("b"), resultset2.getString("c"), resultset2.getString("d"))
------------------------------------------------
这样不行吧!
resultset1: select * from T1
然后:
resultset2: select * from T2
这个时候resultset1已经不可用了!
SELECT t1.*,t2.*
INTO t3
FROM t1,t2
---------------------------------
你这种是临时表的方式,要求表T3不存在吧?在本问题中T3是已经存在的表,不可以将它作为临时表。
每次从T1,T2中选取部分纪录放到CachRowset中,再将CachRowset中的数据逐条插入T3中,接着CachRowet继续取后面的纪录,直到取完为止。