Mysql 如何将子查询与插入合并到两个不同的表+;引用自增值

Mysql 如何将子查询与插入合并到两个不同的表+;引用自增值,mysql,insert,subquery,Mysql,Insert,Subquery,下面是我用来查找productID和MAX orderby值的查询 SELECT xc.productid, product, (MAX(orderby)+1) FROM xcart_products xp LEFT JOIN xcart_classes xc ON xc.productid = xp.productid WHERE product LIKE '% Frame' GROUP BY productid; 然后我想使用productid和ORDERBY值+1并填充我的xc

下面是我用来查找productID和MAX orderby值的查询

 SELECT xc.productid, product, (MAX(orderby)+1)
 FROM xcart_products xp
 LEFT JOIN xcart_classes xc ON xc.productid = xp.productid
 WHERE product LIKE '% Frame'
 GROUP BY productid;
然后我想使用productid和ORDERBY值+1并填充我的xcart_classes表,我想知道填充的自动增量值

 INSERT INTO xcart_class_options
 (`classid`,`option_name`,`orderby`,`avail`,`price_modifier`,`modifier_type`,`fba`,`rpro_attr`) 
 VALUES
 ('11434','Yes','0','Y','0.00','$','0',NULL);
 SELECT @last:= LAST_INSERT_ID();
然后我想使用自动递增的值来填充下一个插入-

 INSERT INTO xcart_classes
 (`classid`,`productid`,`class`,`classtext`,`orderby`,`avail`,`is_modifier`,`classnote`,`showcheckbox`,`showcheckbox`,`showaddproduct`,`popup_url`,`popup_width`,`popup_height`) 
 VALUES
 (@last,'<REFERENCEDPRODUCTID>','TEST','TEST','<REFERENCE_MAX_ORDERID+1>','Y','Y','','Y','',NULL,NULL,NULL);
插入到xcart\u类中
(`classid`、`productid`、`class`、`classtext`、`orderby`、`avail`、`is_修饰符`、`classnote`、`showcheckbox`、`showaddproduct`、`popup_url`、`popup_宽度`、`popup_高度`)
价值观
(@last','TEST','TEST','Y','Y','Y','Y','NULL,NULL,NULL);
有没有一种方法可以用一条语句来完成这两个插入,或者这是我需要多条语句才能完成的


我是否可以将最后一个\u INSERT \u ID()保存到用户定义的变量中,以将其推送到下一个INSERT?

最后使用了两个单独的INSERT子查询-

INSERT INTO rgcart.xcart_class_options 
   (`classid`,`option_name`,`orderby`,`avail`,`price_modifier`,`modifier_type`,`fba`     ,`rpro_attr`) 
    SELECT MAX(classid),'Yes','0','Y','0.00','$','0',NULL
    FROM xcart_classes
    WHERE productid IN (
        SELECT xp.productid
        FROM xcart_products xp
        LEFT JOIN rgcart.xcart_classes xc ON xc.productid = xp.productid
        WHERE product LIKE '% CL'
        GROUP BY productid
        ORDER BY productid ASC)
    GROUP BY productid;

INSERT INTO xcart_classes
(`productid`,`class`,`classtext`,`orderby`,`avail`,`is_modifier`,`classnote`,`showcheckbox`,`showaddproduct`,`popup_url`,`popup_width`,`popup_height`) 
    SELECT xp.productid,'TEST','TEST2',(MAX(orderby)+1),'Y','Y','','Y','',NULL,NULL,NULL
    FROM xcart_products xp
    LEFT JOIN rgcart.xcart_classes xc ON xc.productid = xp.productid
    WHERE product LIKE '% CL'
    GROUP BY productid
    ORDER BY productid ASC;