Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在表中插入混合查询_Sql_Ms Access_Join_Insert - Fatal编程技术网

Sql 如何在表中插入混合查询

Sql 如何在表中插入混合查询,sql,ms-access,join,insert,Sql,Ms Access,Join,Insert,我正试图解决一个复杂的问题, 我有一个如下结构的查询: Select ( SELECT a.CD_MAD, b.* FROM ( SELECT '0' & [CD_SOC] & [CT_OPR] & [CD_MVT] & [CT_MVT] & [CD_RGL_FIN] &

我正试图解决一个复杂的问题, 我有一个如下结构的查询:

Select 
       (
        SELECT     a.CD_MAD, b.* FROM 
                                  (
                                   SELECT '0' & [CD_SOC] & [CT_OPR] & [CD_MVT] & [CT_MVT] & [CD_RGL_FIN] & [CD_MODEPAIE] AS p, 
                                          [table3].CD_MAD FROM table3
                                  )  AS a 
        RIGHT JOIN (
                    SELECT trim([CODECIE]) & trim([TPOPER]) & trim([MVNT]) & trim([TPMVNT]) & trim([MODEPAIE]) & trim([MODEPAIE1]) AS p, 
                           tbl1.CODEENR, tbl1.CODECIE, tbl1.TPOPER, tbl1.MVNT,
                           tbl1.TPMVNT, tbl1.DTCOMPT, tbl1.DTDEBEF, tbl1.SIGNE,
                           tbl1.TTTCF, tbl1.TTTCG, tbl1.DEVISEF, tbl1.DEVISEG,
                           tbl1.CODEPDT, tbl1.NOCTR, tbl1.NOPIECE, tbl1.CATMIN, 
                           tbl1.NOCPT, tbl1.MODEPAIE, tbl1.THTF, tbl1.THTG, 
                           tbl1.TAXE_F, tbl1.TAXE_G, tbl1.FRAC, tbl1.APPORT, 
                           tbl1.VENDEUR, tbl1.MODEPAIE1, tbl1.TPEVNT, 
                           tbl1.FAITGEN, tbl1.DTSURV, tbl1.DURPR, tbl1.NOPIECE1,
                           tbl1.ANNEE, tbl1.MNTCOMCO, tbl1.MNTCOMAP, tbl1.ID 
                   FROM    tbl1
                  )  AS b ON b.p=a.p
        );
这个查询基本上是在两个现有表的两个子集之间创建连接,而无需通过构建临时表(这是我的目标!);这个查询很有效。 但是现在我想将查询的结果插入到一个表中; 我已经尝试过“insert-into”语句,但似乎失败了;特别是,在执行insert into语句时,似乎无法识别i'v用于创建查询的别名“a”和“b”

我如何解决这个问题

INSERT INTO table (user, column1, column2) 
SELECT      a.CD_MAD, b.* FROM 
                               (
                                SELECT '0' & [CD_SOC] & [CT_OPR] & [CD_MVT] & [CT_MVT] & [CD_RGL_FIN] & [CD_MODEPAIE] AS p, 
                                       [table3].CD_MAD FROM table3
                               )  AS a 
RIGHT JOIN (
            SELECT trim([CODECIE]) & trim([TPOPER]) & trim([MVNT]) & trim([TPMVNT]) & trim([MODEPAIE]) & trim([MODEPAIE1]) AS p, 
                   tbl1.CODEENR, tbl1.CODECIE, tbl1.TPOPER, tbl1.MVNT,
                   tbl1.TPMVNT, tbl1.DTCOMPT, tbl1.DTDEBEF, tbl1.SIGNE,
                   tbl1.TTTCF, tbl1.TTTCG, tbl1.DEVISEF, tbl1.DEVISEG,
                   tbl1.CODEPDT, tbl1.NOCTR, tbl1.NOPIECE, tbl1.CATMIN, 
                   tbl1.NOCPT, tbl1.MODEPAIE, tbl1.THTF, tbl1.THTG, 
                   tbl1.TAXE_F, tbl1.TAXE_G, tbl1.FRAC, tbl1.APPORT, 
                   tbl1.VENDEUR, tbl1.MODEPAIE1, tbl1.TPEVNT, 
                   tbl1.FAITGEN, tbl1.DTSURV, tbl1.DURPR, tbl1.NOPIECE1,
                   tbl1.ANNEE, tbl1.MNTCOMCO, tbl1.MNTCOMAP, tbl1.ID 
             FROM  tbl1
              )  AS b ON b.p=a.p;

基本上,去掉第一个括号并选择应该有帮助

您能以更可读的格式添加INSERT SQL吗?您遇到的确切错误是什么?