好家伙,我需要填充表与我的查询像EL结果....DB2 - 查询结果以新表
SELECT FIELD1, FIELD2, X FROM OLDTABLE WHERE X=Y
我是一个Java开发人员,我的朋友们,RPG开发商在AS400。当他们执行AA的查询有一个选项来保存查询结果文件
的选项称为SELECT输出,可以选择1显示2打印机3文件
可以直接从查询做到这一点?或者是本地iSeries选项?
好家伙,我需要填充表与我的查询像EL结果....DB2 - 查询结果以新表
SELECT FIELD1, FIELD2, X FROM OLDTABLE WHERE X=Y
我是一个Java开发人员,我的朋友们,RPG开发商在AS400。当他们执行AA的查询有一个选项来保存查询结果文件
的选项称为SELECT输出,可以选择1显示2打印机3文件
可以直接从查询做到这一点?或者是本地iSeries选项?
查询会提示您替换现有的表。直接SQL不会提示替换现有的表,因此您有两种情况(请参阅注释)。
如果输出表不存在,所有你需要的是
create table newtable as (select <...> from oldtable) with data
如果输出表已经存在,你需要的是子选择的刀片。
Insert into newtable
Select <...> from oldtable
注意
随着TR10的2015年5月发布的V7.1和TR2为V7.2,IBM增加了支持OR REPLACE
子句的CREATE TABLE
声明。所以,如果你恰巧是这些红素或更高版本,你可以简单地使用:
create or replace table newtable as (select <...> from oldtable) with data
创建表的iSeries的sql
创建数据表。
create table abc as (select x,y,z from sometable where x=y) with data
创建一个空表。
create table abc as (select x,y,z from sometable where x=y) data definition only
没有输出到使用sql的打印机。
可以将SQL编译为查询管理器查询(CRTQMQRY),然后通过(STRQMQRY)运行查询。
为此,请将查询放入具有TXT成员类型的某种源文件中。进入命令行并运行CRTQMQRY命令并创建输出QMQRY。可以提示STRQMQRY,您可以将结果保存在输出文件或打印输出中或交互式查看。如果您将其作为批处理作业提交,交互式查看输出效果不佳。
我们知道这个用户要求用sql的输出创建一个表。 – danny117
@ danny117,很好的接收......这就是我在度假时从移动应答中获得的。我已经更新了我的答案。 – Charles
:) ................. – danny117